這里給大家分享一些很有用的 Git 命令,其中很多用法你可能都不知道,無(wú)論你是工作在團(tuán)隊(duì)環(huán)境中或在您的個(gè)人項(xiàng)目中,這些命令將對(duì)你幫助很大,讓你可以更加高效的進(jìn)行項(xiàng)目開(kāi)發(fā),更輕松愉快的工作和生活。
我一直在使用這個(gè)命令定期進(jìn)行發(fā)送給其他人進(jìn)行審查/整合。這條命令將把近期提交的修改過(guò)的文件導(dǎo)出到一個(gè)zip文件。
git archive -o ../updated.zip HEAD $(git diff --name-only HEAD^)
同樣,如果你需要導(dǎo)出兩次提交之間修改過(guò)的文件,你可以用這一個(gè)。
git archive -o ../latest.zip NEW_COMMIT_ID_HERE $(git diff --name-only OLD_COMMIT_ID_HERE NEW_COMMIT_ID_HERE)
如果你想從遠(yuǎn)程倉(cāng)庫(kù)克隆特定的一個(gè)分支,這條命令對(duì)你很有用:
git init git remote add -t BRANCH_NAME_HERE -f origin REMOTE_REPO_URL_PATH_HERE git checkout BRANCH_NAME_HERE
如果您需要申請(qǐng)從提交的一些其他不相關(guān)的創(chuàng)庫(kù)到本地存儲(chǔ)庫(kù),這里是一個(gè)快捷的方式:
git --git-dir=PATH_TO_OTHER_REPOSITORY_HERE/.git format-patch -k -1 --stdout COMMIT_HASH_ID_HERE| git am -3 -k
cherry 命令可以讓你檢查你的分支的變化是否存在于其他一些分支之中。它會(huì)顯示在當(dāng)前分支相對(duì)于給定的分支的修改,用+或-標(biāo)志提示提交合并與否。+表示不存在,而-表示存在于給定的分支。
git cherry -v OTHER_BRANCH_NAME_HERE #For example: to check with master branch git cherry -v master
有時(shí)候,你需要啟動(dòng)一個(gè)新的分支,同時(shí)想摒棄歷史信息,例如,你想將代碼放在公共領(lǐng)域(開(kāi)源)又不想共享歷史信息。
git checkout --orphan NEW_BRANCH_NAME_HERE
下面的命令是從其他分支獲取文件,而不用切換分支。
git checkout BRANCH_NAME_HERE -- PATH_TO_FILE_IN_BRANCH_HERE
如果你工作在一個(gè)團(tuán)隊(duì),他們都是工作在同一個(gè)分支,你需要頻繁的讀取/合并文件。但是有時(shí)復(fù)位了你環(huán)境的特定配置,你必須在合并后每一次都再改一下。使用這個(gè)命令,你可以忽略更改特定的文件:
git update-index --assume-unchanged PATH_TO_FILE_HERE
這個(gè) name-rev 命令可以告訴你提交相對(duì)于最新發(fā)布版本的位置。利用這一點(diǎn),你可以檢查你的變化是否發(fā)布版本的一部分。
git name-rev --name-only COMMIT_HASH_HERE
如果你工作的團(tuán)隊(duì)正工作在同一個(gè)分支,那么你所要做的獲取/合并或經(jīng)常拉取。分支合并的 git 記錄與合并提交時(shí)提示功能分支被并入主干。但在多個(gè)團(tuán)隊(duì)成員工作的同一分支的情況下,經(jīng)常合并導(dǎo)致在日志中多個(gè)合并的消息引起混亂。所以你可以使用 pull rebase,以保持歷史信息清除了無(wú)用合并的消息。
git config branch.BRANCH_NAME_HERE.rebase true
此外,您可以配置一個(gè)特定的分支總是衍合:
git pull --rebase
英文鏈接:10 Useful Advanced Git Commands
編譯來(lái)源:夢(mèng)想天空 ◆ 關(guān)注前端開(kāi)發(fā) ◆ 分享網(wǎng)頁(yè)資源
本文來(lái)自【夢(mèng)想天空(http://m.survivalescaperooms.com/lhb25/)】
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注