Programing

github에서 브랜치 이름 바꾸기

lottogame 2020. 4. 5. 19:53
반응형

github에서 브랜치 이름 바꾸기


방금 로컬 지점의 이름을 바꿨습니다.

git branch -m oldname newname

그러나 이것은 지점의 로컬 버전 이름 만 바꿉니다. github 에서 어떻게 이름을 바꿀 수 있습니까?


언급 한 바와 같이 Github에서 이전 명령을 삭제하고 다시 밀어 넣으십시오. 그러나 사용 된 명령은 필요한 것보다 조금 더 장황합니다.

git push origin :name_of_the_old_branch_on_github
git push origin new_name_of_the_branch_that_is_local

단순한. git push 명령은 명령을 조금만 빼면 본질적으로 다음과 같습니다.

git push <remote> <local_branch>:<remote_branch>

따라서 local_branch를 지정하지 않고 푸시를 수행한다는 것은 본질적으로 "내 로컬 저장소에서 아무것도 가져 가지 않고 원격 브랜치로 만듭니다"를 의미합니다. 나는 항상 이것이 완전히 엉뚱하다고 생각했지만 그것이 끝난 방식입니다.

편집 : 현재 힘내 1.7 원격 지점을 삭제하기위한 대체 구문이있다 :

git push origin --delete name_of_the_remote_branch

편집 : 의견에서 @ void.pointer에서 언급했듯이

두 가지 푸시 조작을 결합 할 수 있습니다.

git push origin :old_branch new_branch

이전 분기를 삭제하고 새 분기를 푸시합니다.

이것은 원격의 원래 브랜치 및 새 브랜치 이름을 인수로 사용하는 간단한 별명으로 바꿀 수 있습니다 ~/.gitconfig.

[alias]
    branchm = "!git branch -m $2 $3 && git push $1 :$2 $3 -u #"

용법:

git branchm origin old_branch new_branch

쉘 명령의 위치 인수는 git의 이전 버전 (2.8 이전)에서는 문제가되었으므로 별칭은 git 버전에 따라 달라질 수 있습니다. 자세한 내용은 이 토론 을 참조하십시오.


다음 명령이 나를 위해 일했습니다.

git push origin :old-name-of-branch-on-github
git branch -m old-name-of-branch-on-github new-name-for-branch-you-want
git push origin new-name-for-branch-you-want

이전 분기를 제거하고 새 분기를 만드십시오.

예 (원격 지사 이름 바꾸기) :

git push origin :refs/heads/oldname
git push origin newname:refs/heads/newname

로컬 브랜치의 이름을 바꾸고 푸시 / 풀 위치에 대한 설정을 변경해야 할 수도 있습니다.


git branch 이름을 변경하는 방법에 대한 3 가지 명령을 찾았습니다.이 명령은 더 빠른 방법입니다.

git branch -m old_branch new_branch         # Rename branch locally    
git push origin :old_branch                 # Delete the old branch    
git push --set-upstream origin new_branch   # Push the new branch, set local branch to track the new remote

단계별로 필요한 경우이 위대한 기사를 읽을 수 있습니다

Git 로컬 및 원격 지점의 이름을 바꾸는 방법


터미널없이 그렇게 할 수 있습니다. 새 이름으로 분기를 만들고 이전 이후를 제거하면됩니다. 이 게시물을 사용하여 그렇게 할 수 있습니다.

https://github.com/blog/1377-create-and-delete-branches


다음은 나를 위해 일한 것입니다.

1.) 새로운 브랜치를 먼저 생성하십시오 : git push github newname : refs / heads / newname

2.) github 사이트에서 설정으로 이동하여 기본 분기를 newname으로 변경하십시오.

3.) 이전 이름 ​​삭제 git push github --delete oldname


이 기사는 실제로 쉽게 수행하는 방법을 보여줍니다.
1. 로컬 힘내 지점의 이름을 변경하려면, 우리가 이름 수정 힘내 분기 -m 명령을 사용할 수 있습니다 :
git branch -m feature1 feature2
당신은 그냥 원격 힘내 지점의 이름을 변경하는 명령을 찾고 있다면 2, 이것은이 "
git push -u origin feature2:feature3
더이 있는지 확인하지 이 작업을 수행하기 전에 지점에 태그를 추가하십시오 git tag.


필자의 경우 이름이 바뀐 분기를 위로 올리려면 추가 명령 필요했습니다 .
git branch --unset-upstream
origin newname

(입력하기 쉽도록) 먼저 git checkout oldname.
그런 다음 다음을 실행하십시오.

git branch -m newname
git push origin :oldname 또는 또는git push origin --delete oldname
git branch --unset-upstream
git push -u origin newname git push origin newname

이 추가 단계는를 통해 지점에서 원격 추적을 설정하는 경향이 있기 때문에 필요할 수 있습니다 . 이 방법으로 체크 아웃하면 나중에 유형 필요합니다.git push -u origin oldnameoldnamegit pushgit push origin oldname

내가 않는 경우 NOT 명령을 사용 git branch --unset-upstream하기 전에 git push origin newbranch, 자식 재 - 생성 oldbranch 과 푸시 newbranchorigin oldbranch- 내 의도를 물리 치고.


  1. 다운로드 골드 피처 SourceTree (무료).
  2. 저장소의 로컬 복제본을 가져 오십시오.
  3. 사이드 바에서 지점을 마우스 오른쪽 버튼으로 클릭하여 이름을 바꿉니다. 상황에 맞는 메뉴에서 "분기 이름 바꾸기 ..."를 선택하고 이름을 바꿉니다.
  4. 원점으로 푸시합니다.

다른 방법은 다음 파일의 이름바꾸는 것입니다 .

  1. 프로젝트 디렉토리를 탐색
  2. 이름 바꾸기 .git/refs/head/[branch-name].git/refs/head/new-branch-name
  3. 이름 바꾸기 .git/refs/remotes/[all-remote-names]/[branch-name].git/refs/remotes/[all-remote-names]/new-branch-name

로컬 PC 원산지 / 원격 서버 모두에서 헤드 및 리모컨 이름 바꾸기

지점 이름이 변경되었습니다 (로컬 및 원격!).


주의

현재 branch-name에 슬래시 ( /) 가 포함되어 있으면 git은 다음과 같이 디렉토리를 만듭니다.

현재 지점 이름 : "awe/some/branch"

  • .git/refs/head/awe/some/branch
  • .git/refs/remotes/[all-remote-names]/awe/some/branch

희망 지점 이름 : "new-branch-name"

  1. 프로젝트 디렉토리를 탐색
  2. 에서 branch파일을 복사.git/refs/*/awe/some/
  3. 에 넣어 .git/refs/head/.
  4. branch모든 파일을 복사.git/refs/remotes/*/awe/some/
  5. 그들을 넣어 .git/refs/remotes/*/.
  6. 모든 opi branch파일의 이름을로 바꿉니다 new-branch-name.
  7. 디렉토리와 파일 구조가 다음과 같은지 확인하십시오.
    • .git/refs/head/new-branch-name
    • .git/refs/remotes/[all-remote-names]/new-branch-name
  8. 모든 원격 출처 / 서버에서 동일한 작업을 수행하십시오 (있는 경우).
    • info : 원격 서버에는 이미 원격 서버에 있기 때문에 일반적으로 refs / remotes / * 디렉토리가 없습니다.) (아마도 고급 git 구성에서는 가능할 수도 있지만 결코 본 적이 없습니다)

지점의 이름 awe/some/branchnew-branch-name(로컬 및 원격)으로 변경되었습니다 .

branch-name의 디렉토리가 제거되었습니다.


정보 : 이 방법은 최고는 아니지만 다른 방법으로 문제가있는 사람들에게는 여전히 효과적입니다.


다음 명령은 지점 이름을 로컬로 바꾸고 원격 위치에서 이전 지점을 삭제 한 다음 새 지점을 밀어 로컬 지점을 설정하여 새 원격을 추적합니다.

git branch -m old_branch new_branch
git push origin :old_branch
git push --set-upstream origin new_branch

git local 및 remote에서 브랜치 이름 바꾸기

1. 지사 이름을 바꿉니다.

지점에 있다면 이름을 바꾸십시오.

git branch -m new-name

다른 지점에있는 경우 :

git branch -m old-name new-name

2. 이전 이름의 원격 분기를 삭제하고 새 이름의 로컬 분기를 누릅니다.

git push origin :old-name new-name

3. 새 이름 로컬 브랜치의 업스트림 브랜치를 재설정하십시오.

지점으로 전환 한 후 :

git push origin -u new-name

결론은

git branch -m new-name
git push origin :old-name new-name
git push origin -u new-name

참고 URL : https://stackoverflow.com/questions/9524933/renaming-a-branch-in-github

반응형