Як додати файли та папки в репост GitHub?


248

Я створив обліковий запис на GitHub - я новачок у ньому - і зіткнувся з проблемою із додаванням файлів. Я додав readme.txt. Також у мене є 3 інші файли PHP та папка, що включає зображення.

Як додати файли та папку? Я спробував це, git pullтому що git push origin -u masterпоказав мені помилку.


9
Випробували офіційний посібник з git ? Це висвітлюється на самому початку.
— jweyrich

2
Я рекомендую книгу ProGit, онлайн-версія безкоштовна progit.org/book
— house9

Примітка: з грудня 2012 року ви можете створювати файли безпосередньо через веб-інтерфейс GitHub. Дивіться мою відповідь нижче .
— VonC

Відповіді:


371

Ви можете додавати файли , використовуючи git add, наприклад , git add README, git add <folder>/*або навітьgit add *

Потім використовуйте git commit -m "<Message>"для фіксації файлів

Нарешті, git push -u origin masterщоб натиснути файли.

Коли ви робите модифікації, git statusщо дає вам список файлів змінених, додайте їх, використовуючи git add *все, або ви можете вказати кожен файл окремо, потім, git commit -m <message>нарешті,git push -u origin master

Приклад - скажімо, ви створили файл README, запущений git statusдає вам

$ git status
# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   README

Виконати git add README, файли ставлять для фіксації. Потім запустіть git statusще раз, це має дати вам - файли додані та готові до здійснення.

$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   new file:   README
#

nothing added to commit but untracked files present (use "git add" to track)

Потім бігайте git commit -m 'Added README'

$ git commit -m 'Added README'
[master 6402a2e] Added README
  0 files changed, 0 insertions(+), 0 deletions(-)
  create mode 100644 README

Нарешті, git push -u origin masterнатиснути на віддалену гілку masterдля сховища origin.

$ git push -u origin master
Counting objects: 4, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 267 bytes, done.
Total 3 (delta 1), reused 0 (delta 0)
To xxx@xxx.com:xxx/xxx.git
   292c57a..6402a2e  master -> master
Branch master set up to track remote branch master from origin.

Файли успішно перенесені у віддалений сховище.

Запуск, git pull origin masterщоб переконатися, що ви поглинули будь-які зміни вгору

$ git pull origin master
remote: Counting objects: 12, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 8 (delta 4), reused 7 (delta 3)
Unpacking objects: 100% (8/8), done.
From xxx.com:xxx/xxx
 * branch            master     -> FETCH_HEAD
Updating e0ef362..6402a2e
Fast-forward
 public/javascript/xxx.js |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
 create mode 100644 README

Якщо ви не хочете об'єднати зміни в потоці з вашим локальним сховищем, запустіть, git fetchщоб отримати зміни, а потім git mergeоб'єднати зміни. git pullце лише поєднання fetchі merge.

Я особисто використовував gitimmersion - http://gitimmersion.com/, щоб отримати криву на git, його покрокове керівництво, якщо вам потрібна документація та допомога


8
git add --all folder/працював на мене краще, ніж на мене,git add folder/*
— Алекс

4
Це додає всі файли та папки рекурсивно?
— Алікс

git add <folder>/*додає нові файли теж.
— Даніель

49

Для користувачів Linux та MacOS:

  1. Спочатку зробіть сховище (Name = RepositoryName) на github.
  2. Відкрийте термінал і зробіть новий каталог (mkdir NewDirectory).
  3. Скопіюйте ProjectFolder у цей новий каталог.
  4. Змініть поточний каталог роботи на NewDirectory.
  5. Виконайте ці команди
    1. git init
    2. git Додати ProjectFolderName
    3. git commit -m "перший фіксатор"
    4. git remote add origin https://github.com/YourGithubUsername/RepositoryName.git
    5. git push -u походження майстер

20

Зауважте, що з початку грудня 2012 року ви можете створювати нові файли безпосередньо з GitHub :

Створіть новий файл

ProTip ™ : Ви можете попередньо заповнити поле імені файлу, використовуючи лише URL-адресу.
Введення ?filename=yournewfile.txtв кінці URL-адреси попередньо заповнить поле імені файлу ім'ям yournewfile.txt.

г


2
Як ви можете завантажити файл, наприклад зображення?
— Дрю Бейкер

@DrewBaker описаний тут механізм призначений для створення текстового файлу. Для зображення вам все одно потрібно буде клонувати репортаж GitHub, додати зображення на місцевому рівні, зробити фіксацію та натиснути.
— VonC

Дякуємо та +1 за пораду щодо "створення нових файлів безпосередньо з GitHub"!
— zeFree

Я не вірю, що веб-інтерфейс Github надає спосіб додавання папок, окрім додавання простих текстових файлів, таких як readme markdowns.
— Devy

Думаю, що питання полягає в тому, як РЕЗУЛЬТАТИ файли зі свого комп’ютера, а не як створювати файли.
— Електра

8

Якщо ви хочете додати порожню папку, ви можете додати файл ".keep" у свою папку.

Це тому, що git не дбає про папки.


Саме відповідь я шукав.
— Alexis Wilke

6

Вам потрібно перевірити сховище на локальній машині. Потім ви можете змінити цю папку на локальній машині.

git commit -am "added files"

Ця команда передасть всі файли репо.

git push origin master

це підсуне всі зміни у вашій головній гілці (я вважаю, що ви використовуєте) до віддаленого походження сховища (у цьому випадку github)


4

Просте рішення:

git init
git add =A
git commit -m "your commit"
git push -u origin master

якщо ви хочете додати папку до існуючого репо .., тоді додайте папку до локального коду проекту

git rm --cached ./folderName
 git add ./folderName

після того

git status
git commit -m "your commit"
git push -u origin master

2

Додаючи каталог до github, перевірте, чи не містить у ньому .git-файлу, використовуючи "ls -a", якщо він видаляє його. .git файли в каталозі спричинять проблеми при спробі додати цей каталог у git


0

Перевірте мою відповідь тут: https://stackoverflow.com/a/50039345/2647919

"АБО, ще краще просто перетягніть папку на ваше сховище, відкрите в git-браузері.

Відкрийте свій сховище на веб-порталі, ви побачите список усіх ваших файлів. Якщо ви нещодавно створили репо і розпочали роботу з README, ви побачите лише список README.

Відкрийте папку, яку ви хочете завантажити. перетягніть список у браузері. Дивіться зображення тут ".


0

Я використовую VS SSDT у Windows. Я запустив проект і налаштував локальний контроль версій. Пізніше я встановив git і створив рето Github. Після того, як я пройшов репортаж на Github, я схопив URL-адресу і поставив її у VS, коли він попросив мене за URL-адресою, коли натиснув кнопку "опублікувати в Github".

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.