我需要創建一個修補程序來提交對應用程序所做的更改。無法使用git set-url修改遠程後創建修補程序
我做了什麼至今:
git clone https://github.com/someapp
- 遠程修改到我的帳戶到位桶。
- 進行修改,並承諾一切
- 全押修改到位桶
- 修改遠程回原來的版本庫
- 嘗試使用
git format-patch origin/master --stdout
創建補丁。此命令不會生成輸出
在這種情況下我將如何生成補丁?我可以看到所有提交內容git log
我需要創建一個修補程序來提交對應用程序所做的更改。無法使用git set-url修改遠程後創建修補程序
我做了什麼至今:
git clone https://github.com/someapp
git format-patch origin/master --stdout
創建補丁。此命令不會生成輸出在這種情況下我將如何生成補丁?我可以看到所有提交內容git log
讓我來說明你做了什麼。當你克隆GitHub庫,origin/master
和本地master
分支時,都指向某個提交。我們稱之爲A
。現在讓我們說,在更改origin
遠程的URL後,您提交了一個提交B
並將其推送。現在origin/master
和master
都指向提交B
。當您將origin
的URL更改回原始GitHub回購時,origin/master
仍指向提交B
。因此,您創建補丁的嘗試不會輸出,因爲您的本地master
和origin/master
之間沒有區別。
請記住,origin/master
是一個「遠程跟蹤分支」。儘管遠程跟蹤分支旨在反映遠程分支,但它們存儲在本地。當你改變遙控器的URL時,奇怪的事情會發生,就像你看到的一樣。
一個解決方案是將兩個不同的遙控器添加到您的存儲庫。這樣,您可以跟蹤BitBucket回購的master
和原始GitHub
回購的master
。
與其修改遠程URL,我建議添加兩個單獨的遙控器,以便您可以跟蹤它們。 –