在使用git時,我傾向於使用大量「高級」功能在推送到遠程設備之前重寫和重新組織本地歷史記錄。我經常用來改變當前分支指向的提交的命令是git reset --hard <commit>
。不幸的是,這個命令在你的本地目錄中有未提交的更改運行時會有一些潛在的不良影響。由於這個功能,我失去了工作(雖然通常不多,但往往會經常犯)。移動分支指針比`git reset --hard`更安全嗎?
是否有替代git reset --hard
更改提交我的當前分支指向,當我有我的工作目錄中未提交的更改不會導致數據丟失? (理想情況下,我希望像git checkout
這改變了我當前分支指針而不是改變HEAD的。)
Git的v1.7.3版本說明 ... 「混帳結賬-B」 是說 「混帳分支-f 」 其次是 「混帳結賬」 –
@UweGeuder無論是發行說明一個較短的方式不完整的,那麼,或者在稍後的版本中放鬆。如果你在分支'master'上,'git branch -f master'是一個錯誤(「致命的:不能強制更新當前分支」),但是'git checkout -B master '確實有效。我已經用Git 1.9.4測試過了。 – hvd
這幾乎是完美的。我沒有意識到'git checkout'的選項。現在我只需要編寫一個處理「當前分支」填充的別名,所以我不必每次都輸入它。謝謝你的幫助。 ;-) – Ajedi32