Як додати файли та папки в репост 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.