2015-10-01 66 views
0

如果我創建一個名爲「foobar」的Git分支,在它中做一些工作,將它合併回我的開發分支,然後刪除foobar分支,我可以在將來的某個點使用相同的名稱「foobar」創建另一個分支或這會混淆Git嗎?你能重新使用已刪除的Git分支名稱嗎?

謝謝。

回答

0

在git中,分支名稱只是一個指向特定提交的指針。將分支添加到分支只是將該指針移動到新的提交。刪除分支只是意味着刪除指針。如果將來在某個時間點重新創建同一分支,則只需創建一個新指針,指向不同的提交。

TL; DR:是的,你可以做到這一點,不,它不會混淆Git。

1

是的,沒問題。無論如何,分支名稱只適用於人類。 Git只關心SHA。

1

您可以隨時重用分支名稱,git不會在意。

雖然你可以很容易地混淆,所以你應該在這裏稍微小心。 (我講的是經驗:-))

還有一點需要考慮:當你通過發佈庫中的提交或從他們的提交中分享工作時,你通常會通過給他們分支名稱來做到這一點,或者看着他們的分支名稱。如果您告訴Fred上週查看您的分支foobar,然後您刪除了foobar並在本週創建了一個新的和不同的foobar,並且Fred去了並獲得您的foobar,那麼您也可能會混淆Fred。

+0

Fred應該不會期望分支是不可變的。即使它是「同一個」分支,它也可能隨時在時間軸上移動。 – dualmon

+0

@dualmon:當然,但他(弗雷德)很可能期望分支只能以「快進」的方式移動。例如,上一次他提到,他的遠程控制器說'dualmon/foobar'是commit'1cf97a3',而這次'dualmon/foobar'甚至沒有'1cf97a3'的歷史記錄:這怎麼可能?一種可能的方式是,這個foobar與以前的foobar無關。如果每個人都同意這件事現在就應該發生,這並不是那麼容易混淆,但它*是需要考慮的事情。 – torek

+0

非常真實。如果foobar重新發布也可能發生。 – dualmon