亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從Git中的分支刪除提交

從Git中的分支刪除提交

Git
慕尼黑的夜晚無繁華 2019-06-04 17:08:21
從Git中的分支刪除提交我想知道如何刪除提交。通過delete,我的意思是,就好像我沒有提交一樣,當我在將來做一個推送時,我的更改不會推到遠程分支。我讀了git幫助,我認為我應該使用的命令是git reset --hard HEAD..這是對的嗎?
查看完整描述

3 回答

?
慕田峪9158850

TA貢獻1794條經驗 獲得超8個贊

小心: git reset --hard 將刪除您的工作目錄更改。..一定要保存想要保存的任何本地更改。在運行此命令之前。

假設你坐在那次提交上,那么這個命令就會破解它.

git reset --hard HEAD~1

這個HEAD~1意思是在頭前提交。

或者,您可以查看git log,找到要備份的提交id,然后執行以下操作:

git reset --hard <sha1-commit-id>

如果你已經推了它,你就需要用力推動才能擺脫它.

git push origin HEAD --force

不過如果其他人可能已經成功了,那么你最好開始一個新的分支機構。因為當他們拉的時候,它只會把它合并到他們的工作中,然后你會把它再推回去。

如果你已經推動了,它可能會更好地使用git revert,以創建“鏡像”提交,該提交將撤消更改。但是,這兩個提交都將在日志中。


FYI-git reset --hard HEAD如果你想擺脫進展中的工作,那就太好了。它將重置您回到最近的提交,并刪除您的工作樹和索引中的所有更改。


最后,如果需要找到“刪除”的提交,則通常會出現在git reflog除非你已經收集了你的存儲庫。


查看完整回答
反對 回復 2019-06-04
?
達令說

TA貢獻1821條經驗 獲得超6個贊

另一種可能是我個人最喜歡的命令之一:

git rebase -i <commit>~1

這將在交互模式下啟動重基。-i在提交之前的那一刻,你想要打擊。編輯器將啟動列出從那時起的所有提交。刪除包含要刪除的提交的行,并保存文件。rebase將完成其余的工作,只刪除該提交,并將所有其他的重放回日志中。


查看完整回答
反對 回復 2019-06-04
  • 3 回答
  • 0 關注
  • 1377 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號