如何安全的在一個已有的git分支上,自動化的切換到另外一個分支指定commit

如何安全的在一個已有的git分支上,自動化的切換到另外一個分支指定commit?下面是一種乾淨的安全的可以自動化的做法:

清理本地髒數據

git checkout .
git clean -df .

將 commit 重置到 HEAD

git reset --hard HEAD

重置子git模塊

git submodule foreach --recursive git reset --hard
git submodule update --init --recursive

刪除可能的名字叫做 swap_tmp 的分支

git branch -D swap_tmp

立刻切換到 swap_tmp 分支

git checkout -b swap_tmp

刪除舊的目標分支,這是因爲本地 target_branch 可能已經被污染,刪除以免衝突

git branch -D target_branch

從遠程倉庫拉取目標分支最新版本

git fetch origin target_branch

切換到目標分支

git checkout target_branch

重置到該分支的目標commit

git reset --hard target_commit

重置子git模塊

git submodule foreach --recursive git reset --hard
git submodule update --init --recursive

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章