如果你用 git commit -m '******x' 提交了一次變化,而你又不確定到底這次提交了哪些內容。你就可以用下面的命令顯示當前 head 上的最近一次的提交:
git show
或者
git log -n1 -p
如果你的提交資訊寫錯了且這次提交還沒有推(push), 你可以通過下面的方法來修改提交資訊:
git commit --amend --only
git commit --amend --only -m '******x'
如果你已經推(push)了這次提交, 你可以修改這次提交然後強推(force push),但是不推薦這麼做。因為很有可能需要合併衝突。
新的提交代替舊的,所以如果之前你已經往遠端倉庫上推過一次修正前的提交,那你現在就必須強推(force push) (-f)。
一般來說,要避免強推。最好是建立和推(push)乙個新的提交,而不是強推乙個修正後的提交。後者會使那些與該分支或該分支的子分支工作的開發者,在源歷史中產生衝突。
如果這只是單個提交,修改它:
git commit --amend --author "new authorname @mydomain.com>"
但是不推薦修改所有歷史。
同樣的警告:不到萬不得已的時候不要這麼做。
git revert commitid
使用 revert 會生成一條新的提交記錄。如果你刪除之後又想找回,可以再次使用 revert 。把 id 換成 revert 提交記錄的 id 就可以了。
如果意外的做了一次硬重置,想找回之前的內容。
git reset --hard commitid
因為 git 對每件事都會有日誌,且都會儲存幾天。
git reflog
你將會看到乙個你過去提交的列表,和乙個重置的提交。選擇你想要回到的提交的 id,再重置一次:
git reset --hard sha1234
這樣就完成了。 git 的提交與合併
1,建立遠端倉庫 不論是用命令列還是碼雲之類的都可以 2,git clone url 這是將遠端倉庫庫提交到本地 3,git checkout b dev 建立dev分支並切換到dev分支 4,git add 注意最後有乙個點 將內動新增到本地倉庫 5,git commit m 注釋 這也是必須要寫...
git修改提交,合併提交的基本方法
直接對最上面的commit 資訊做修改 完成後 儲存退出即可 git rebase i 某次的commit之前 r 為修改commit資訊 僅需要將 第一行的pick替換成 r 之後儲存退出 git 會自動彈框到 直接對commit資訊修改儲存即可 使用rebase 變基到 最早的commit之前 ...
git合併本地多筆提交的方法
找到stable 的別人最新merge 的提交 比如 a58d461 yaoke 的提交 把當前的 工作,暫存區都清理了 git reset hard a58d461 cherry pick 你的修改 git cherry pick c51e759 git cherry pick 0eee333 你...