본문 바로가기

Git

기존 프로젝트를 git repository에 연결 하기

1. 프로젝트가 존재하는 폴더 내에 진입.

cd myProject

 

2. Git 초기화

git init

 

git init 명령어는 현재 디렉토리를 Git 저장소로 초기화하는 명령입니다. 즉, 해당 디렉토리에서 Git이 버전 관리를 할 수 있도록 만드는 것입니다.

 

git init 자세히

더보기
  1. Git 저장소 생성: git init은 해당 디렉토리에 .git이라는 숨겨진 폴더를 만들어 Git이 파일 변경 사항을 추적할 수 있게 합니다. 이 폴더에는 Git이 필요로 하는 모든 버전 관리 데이터가 저장됩니다.
  2. 버전 관리 활성화: git init을 실행한 후부터는 Git이 해당 디렉토리 안의 파일들을 추적하고, 커밋을 통해 특정 변경 사항을 기록할 수 있습니다. 초기화하지 않으면 Git은 해당 디렉토리의 파일들을 관리할 수 없습니다.
  3. 원격 저장소와 연결: git init 후에 git remote add origin <원격 저장소 URL> 명령을 통해 원격 저장소와 연결할 수 있습니다. 이렇게 하면 로컬에서 커밋한 내용들을 git push 명령어로 원격 저장소에 업로드할 수 있게 됩니다.

요약하자면 git init은 디렉토리에서 Git을 통해 버전 관리를 시작하기 위해 꼭 필요한 초기화 작업이며, Git의 기능을 사용 가능하게 하는 첫 단계입니다.

 

3. 프로젝트를 연결할 Github repository 생성(Readme 등 파일 생성 없이 빈 repository로 생성 권장)

 

4. Repository 연결

git remote add origin <원격 저장소 URL>

ex)

git remote add origin "https://githum.com/userId/RepostiroyName"

 

origin은 뭔가?

더보기

왜 origin을 사용하는가?

  • 기본 원격 이름: origin은 관습적으로 기본 원격 저장소에 붙이는 이름입니다. git remote add origin <원격 저장소 URL>이라고 하면, <원격 저장소 URL>을 origin이라는 이름으로 저장해 쉽게 사용할 수 있게 됩니다.
  • 편리성: 나중에 git push origin main이나 git pull origin main처럼 origin을 사용해 명령을 단축할 수 있습니다. 이 origin을 통해 원격 저장소 URL을 다시 쓸 필요 없이 간단하게 사용할 수 있습니다.

꼭 origin을 써야 하나요?

꼭 origin이어야 하는 것은 아닙니다. git remote add 명령에서 origin 대신 다른 이름을 사용할 수도 있습니다. 예를 들어, git remote add myrepo <원격 저장소 URL>이라고 하면, 이후에는 git push myrepo main처럼 사용할 수 있습니다.

하지만 여러 사람이 협업할 때는 origin이 표준화된 이름이라 사용하면 다른 개발자와의 커뮤니케이션에서도 혼란이 적습니다.

 

연결된 repository 확인 (fetch / push 주소 확인)

git remote -v

output
origin  https://github.com/userId/RepositoryName/ (fetch)
origin  https://github.com/userId/RepositoryName/ (push)

 

Git에서는 원격 저장소와의 상호작용을 fetchpush로 구분하여 관리합니다. git remote -v 명령어를 통해 보신 것처럼, 각 원격 저장소 URL이 fetch와 push로 두 번 표시되는 이유는 다음과 같습니다.

  1. fetch: 원격 저장소에서 최신 변경 사항을 가져올 때 사용되는 URL입니다. git fetch 또는 git pull 명령어를 사용할 때 이 URL을 통해 원격 저장소의 내용을 로컬로 가져옵니다.
  2. push: 원격 저장소로 로컬 변경 사항을 업로드할 때 사용되는 URL입니다. git push 명령어를 통해 이 URL로 로컬 커밋이 원격 저장소에 반영됩니다.

왜 둘 다 필요한가요?

Git에서는 원격 저장소와의 상호작용을 명확히 구분하기 위해 fetch와 push를 분리해 놓았습니다. 이를 통해 같은 원격 저장소에 대해, 가져오는 URL(fetch)과 업로드하는 URL(push)을 각각 설정할 수 있습니다.

일반적으로 fetch와 push가 동일한 URL을 가리키지만, 필요에 따라 다르게 설정할 수도 있습니다. 예를 들어, 협업 중일 때는 다른 개발자의 변경 사항을 가져오는 저장소내가 커밋을 푸시하는 저장소를 별도로 지정할 수 있습니다.

요약하자면, Git은 fetch와 push 작업을 분리하여 각각 URL을 지정해 주기 때문에 git remote -v 명령어에서 둘 다 표시됩니다.

 
 

'Git' 카테고리의 다른 글

GIt의 기본 개념 및 work flow  (1) 2024.11.11


Calendar
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Tags
더보기
Archives
Visits
Today
Yesterday