GitHub 저장소에 파일 및 폴더를 추가하려면 어떻게합니까?


248

GitHub에서 계정을 새로 만들었습니다. 파일을 추가하는 데 문제가 있습니다. 추가했습니다 readme.txt. 또한 3 개의 다른 PHP 파일과 이미지를 포함한 폴더가 있습니다.

파일과 폴더를 어떻게 추가합니까? 나는 그것을 시도 git pull하기 때문에 git push origin -u master나에게 오류를 보여 주었다.


9
공식 자식 튜토리얼을 사용해 보셨습니까 ? 이것은 매우 시작에 적용됩니다.
jweyrich

2
나는 온라인 버전은 무료 progit.org/book
Pro9it

참고 : 2012 년 12 월부터 GitHub 웹 인터페이스를 통해 파일을 직접 만들 수 있습니다. 아래 내 답변을 참조하십시오 .
VonC 2016 년

답변:


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업스트림 변경 사항을 흡수하기 위해 a 를 실행

$ 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단지의 조합 fetchmerge.

개인적으로 gitimmersion- http: //gitimmersion.com/을 사용 하여 git에 대한 단계별 지침을 제공합니다. 문서와 도움이 필요한 경우


8
git add --all folder/git add folder/*
Alex

4
모든 파일과 폴더를 재귀 적으로 추가합니까?
Alix

git add <folder>/*새 파일도 추가합니다.
Danijel

49

Linux 및 MacOS 사용자의 경우 :

  1. 먼저 github에서 리포지토리 (Name = RepositoryName)를 만듭니다.
  2. 터미널을 열고 새 디렉토리 (mkdir NewDirectory)를 작성하십시오.
  3. ProjectFolder를이 NewDirectory에 복사하십시오.
  4. 현재 작업 디렉토리를 NewDirectory로 변경하십시오.
  5. 이 명령을 실행
    1. 자식 초기화
    2. git add ProjectFolderName
    3. 자식 커밋 -m "첫 번째 커밋"
    4. git remote add origin https://github.com/YourGithubUsername/RepositoryName.git
    5. 자식 푸시 -u 원점 마스터

20

2012 년 12 월 초 부터 GitHub에서 직접 새 파일을 만들 수 있습니다 .

새 파일 만들기

ProTip ™ : URL 만 사용하여 파일 이름 필드를 미리 채울 수 있습니다. URL 끝에
입력 ?filename=yournewfile.txt하면 파일 이름 필드가 name으로 미리 채워 yournewfile.txt집니다.

디


2
이미지와 같은 파일을 어떻게 업로드 할 수 있습니까?
Drew Baker

@DrewBaker 여기에 설명 된 메커니즘은 텍스트 파일 작성을위한 것입니다. 그림의 경우 여전히 GitHub 저장소를 복제하고 그림을 로컬에 추가하고 커밋하고 푸시해야합니다.
VonC

"GitHub에서 직접 새 파일 생성"에 대한 팁과 감사합니다.
zeFree

나는 Github 웹 UI가 readme 마크 다운과 같은 간단한 텍스트 파일을 추가하는 것 이외의 폴더를 추가하는 방법을 제공하지 않았다고 생각합니다.
Devy

문제는 파일을 만드는 방법이 아니라 컴퓨터에서 파일을 업로드하는 방법을 묻는 것입니다.
Élektra

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에 디렉토리를 추가 할 때 디렉토리가 "ls -a"를 사용하여 .git 파일을 포함하지 않는지 확인하십시오. 디렉토리의 .git 파일은 git에 해당 디렉토리를 추가하려고 할 때 문제를 일으 킵니다.


0

내 대답을 확인하십시오 : https://stackoverflow.com/a/50039345/2647919

"또는 더 나은 방법은 폴더를 git browser에서 열린 저장소로 끌어다 놓는 것입니다."

웹 포털에서 저장소를 열면 모든 파일 목록이 표시됩니다. 최근에 저장소를 작성하고 README로 시작한 경우 README 목록 만 표시됩니다.

업로드하려는 폴더를 엽니 다. 브라우저에서 목록을 끌어다 놓습니다. 여기 이미지를 참조 하십시오 . "


0

Windows에서 VS SSDT를 사용하고 있습니다. 프로젝트를 시작하고 로컬 버전 관리를 설정했습니다. 나중에 git을 설치하고 Github 저장소를 만들었습니다. Github에 대한 리포지토리가 있으면 URL을 가져 와서 "Github에 게시"버튼을 눌렀을 때 URL을 물었을 때 VS에 넣었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.