《漫威蜘蛛俠:邁爾斯》要登陸PC?開發商否認
阿新 • • 發佈:2021-12-04
git 常用命令
git add src/READ.txt 建立新檔案 git branch -a 檢視分支 git clean -n 顯示將要刪除的檔案和目錄 -x 刪除忽略檔案已經對git來說不識別的檔案 -d 刪除未被新增到git的路徑中的檔案 -f 強制執行 git checkout master 進入分支 -b 會在本地新建立一個分支 git cherry -v 檢視已經提交,但是未傳送到遠端程式碼庫的commit提交 git cherry-pick 將已提交的程式碼提交到另一個分支 git commit -m 註釋說明 --amend 追加提交 git diff --stat 統計檔案的改動 git log --author=authorname 按作者過濾提交記錄 git pull --rebase 同時會合並分支 git pull = git fetch + git merge FETCH_HEAD git pull --rebase = git fetch + git rebase FETCH_HEAD git rebase 合併提交 前提:不要通過rebase對任何已經提交到公共倉庫中的commit進行修改(你自己一個人玩的分支除外) git reflog 它會記錄所有HEAD的歷史,也就是說當你做reset,checkout等操作的時候,這些操作會被記錄在reflog中 git reset git reset <選項> HEAD/快照ID<~>,其中<快照ID/HEAD> 預設是HEAD,~表示回退的版本數,也可以表達~N --soft soft僅僅是改變HEAD指標的指向,實際上是撤銷上一次commit,暫存區和工作區都沒有改變 --mixd 預設選項,HEAD指標會指向上一個快照,然後將這個上個快照複製到暫存區,暫存區的內容會被覆蓋,工作區不會改變。 --hard hard操作會改變HEAD指標指向上一個快照,同時將上一個快照的內容複製到暫存區和工作區,暫存區和工作區原先的內容會被覆蓋. https://blog.csdn.net/qq_40731414/article/details/87989256 git stash + apply 恢復暫時stash列表中的一個內容,但不會刪除stash列表的內容 + clear 刪除所有快取的stash git status
git log
過濾提交歷史:--grep(按提交資訊);--author(按作者);--after(按日期);--S(按內容)
遇到的問題:
(1)錯誤使用git reset hard
$ git log 檢視提交記錄 若這看起來我們是丟掉了我們第二次的提交,本地的修改也消失了,沒有辦法找回來了。 但是 reflog 會記錄所有HEAD的歷史,也就是說當你做 reset,checkout等操作的時候,這些操作會被記錄在reflog中。 $ git reflog 會顯示所有HEAD的歷史 要找回我們第二commit,只需要做如下操作$git reset --hard 98abc5a(代表commit的Id) 再執行$git log 檢視提交記錄 ,顯示找回丟失的記錄
(2)git pull 錯誤提交,可執行git reset --mixd(預設,可不填) HEAD^/commitId
(3)git rebase 和 git merge的區別
merge操作會生成一個新的節點,之前的提交分開顯示。而rebase操作不會生成新的節點,是將兩個分支融合成一個線性的提交。 merge操作遇到衝突的時候,當前merge不能繼續進行下去。手動修改衝突內容後,add 修改,commit 就可以了。而rebase 操作的話,會中斷rebase,同時會提示去解決衝突。解決衝突後,將修改add後執行git rebase –continue繼續操作,或者git rebase –skip忽略衝突。
(4) git commit --amend
(5) git reset --rebase
(6)原生代碼合併指定的commitId但不提交
git merge 043a7afdeb8bcdef2e74ee606b037f746b1a4dca --no-commit --no-ff 原生代碼合併指定的commitId但不提交,沒有引數--no-commit會生成一個新的commitid
(7)git合併多個commit
https://segmentfault.com/a/1190000017337900
https://blog.csdn.net/u013276277/article/details/82470177
(8)找回pop掉的stash
git fsck
https://www.imooc.com/article/49614
(9)git 找回git stash clear誤刪除的程式碼, 並恢復
https://www.cnblogs.com/lwh-note/p/13398655.html
(10)git如何跨分支查詢某個commit所屬分支?
git branch --contains CommitID
#查遠端所有分支
git branch -r --contains CommitID
#查本地和遠端的所有分支
git branch -a --contains CommitID