재우니의 블로그

 

 

현재 브랜치와 원격 브랜치 간의 추적 정보 설정

 

 

현재 사용 중인 브랜치가 원격 브랜치와 추적 정보를 가지고 있지 않기 때문에 발생하는 문제입니다.

(If you wish to set tracking information for this branch you can do so with:)

 

이는 git이 어떤 원격 브랜치와 병합할지 알 수 없기 때문에 발생합니다.

 

이 문제를 해결하려면 현재 브랜치와 원격 브랜치 간의 추적 정보를 설정해야 합니다. 

2024-07-24 09:29:29.789 [info] > git pull --tags [2778ms]
2024-07-24 09:29:29.789 [info] There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.

    git pull <remote> <branch>

If you wish to set tracking information for this branch you can do so with:

    git branch --set-upstream-to=origin/<branch> master
2024-07-24 09:29:29.827 [info] > git config --get commit.template [34ms]
2024-07-24 09:29:29.834 [info] > git for-each-ref --format=%(refname)%00%(upstream:short)%00%(objectname)%00%(upstream:track)%00%(upstream:remotename)%00%(upstream:remoteref) --ignore-case refs/heads/master refs/remotes/master [35ms]
2024-07-24 09:29:29.888 [info] > git status -z -uall [51ms]
2024-07-24 09:29:29.939 [info] > git for-each-ref --format=%(refname)%00%(upstream:short)%00%(objectname)%00%(upstream:track)%00%(upstream:remotename)%00%(upstream:remoteref) --ignore-case refs/heads/master refs/remotes/master [47ms]
2024-07-24 09:29:29.979 [info] > git config --local branch.master.vscode-merge-base [37ms]
2024-07-24 09:29:30.024 [info] > git for-each-ref --format=%(refname)%00%(upstream:short)%00%(objectname)%00%(upstream:track)%00%(upstream:remotename)%00%(upstream:remoteref) --ignore-case refs/heads/origin/master refs/remotes/origin/master [41ms]

 

 

아래는 문제를 해결하기 위한 단계입니다.

 

⭕ 추적 정보 설정(git branch --set-upstream-to=origin/master master)은 한 번만 하면 되며

⭕ 이후에는 git pull 명령어를 사용할 때 추적 정보가 자동으로 사용됩니다.

 

# 현재 브랜치가 master인지 확인
git branch

# 원격 저장소 확인
git remote -v

# 원격 브랜치와의 추적 정보 설정
git branch --set-upstream-to=origin/master master

# 변경 사항을 Pull
git pull

 

 

로컬에 남아 있는 불필요한 파일을 원격 저장소의 master 브랜치와 동기화하여 삭제하려면?

 

원격 저장소와 동기화를 하고 차이점을 확인한 다음, 불필요한 나의 PC 의 파일을 삭제하며, 동일시 되어 있으니 마지막으로 원격 저장소와 동기화를 합니다.

 

⭕ git reset --hard origin/master

  • ✏️ 로컬 브랜치를 원격 브랜치의 상태로 강제로 맞춥니다. 
  • 🚨 로컬에서의 모든 변경 사항을 덮어쓰므로, 불안하면 LOCAL 파일을 백업해 놓으시고 실행하시면 됩니다.

 

# 원격 저장소와 동기화
git fetch origin

# 원격 브랜치와의 차이점 확인
git diff --name-status origin/master

# 불필요한 파일 삭제
git clean -fd

# 로컬 브랜치를 원격 저장소와 동기화
git reset --hard origin/master