2010-10-20 149 views
10

我創建了一個本地分支X,在某些時候我推到遠程服務器(來源)重命名遠程分支

git push origin X 

我意識到這是一個壞主意,有一個名爲X的分支,並希望它被稱爲ÿ 問題是我已經將分支推送到存儲庫。

將它從服務器上刪除並將其按照像這樣的新名稱推送是否安全?

push origin :X 

// 'clone ' the branch under a new name locally (X-> Y) 

push origin Y 

對於已經從服務器獲取的人會發生什麼情況。假設他們已經在本地根據舊的X名稱BUT在本地創建了一個分支,但他們沒有在本地進行任何更改或將它們推送到舊X分支的服務器。

+0

http://stackoverflow.com/questions/1526794/git-rename-remote-branch也可以提供幫助。 – VonC 2010-10-20 20:49:53

回答

7

其他人將保留指向分支X(如origin/X)的指針,直到他們運行git remote prune origin。它的左作爲陳舊的分支獲取/拉他們將獲得一個第二點(新建)分支Y(如origin/Y

分支與合併不會受到這個時候

所以,只要所有提交仍然可以從您的分支到達,重命名是好的。

0

如果其他人將分支拉到他們的本地存儲庫,刪除它是不安全的。要考慮的一條路線是從舊分支中刪除所有文件。將README指向新分支。