1. 程式人生 > 遊戲 >《漫威蜘蛛俠:邁爾斯》要登陸PC?開發商否認

《漫威蜘蛛俠:邁爾斯》要登陸PC?開發商否認

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