2020-07-23 常用git命令, Zsh插件

一,常見命令整理

    1)git clone xxx:將遠(yuǎn)程git分支文件下載到本地

    2)git checkout dev:切換到dev分支

    3)git branch:查看當(dāng)前的git分支狀態(tài)

    4)git add . :將文件夾下的文件夾及文件添加到git的暫存區(qū)

    5)git commit -m "備注信息在這填寫":將本地的緩存及未提交文件提交到版本庫(kù)

    6)git push:將版本庫(kù)的內(nèi)容提交到遠(yuǎn)程分支

    7)git reset --hard HEAD^:回退到版本庫(kù)的上一個(gè)版本

    8)git reset --hard 版本號(hào):回退到版本庫(kù)的指定版本號(hào)

    9)git status:可以顯示分支沖突時(shí)沖突在哪里

    10)git fetch:將遠(yuǎn)程分支拉取到版本庫(kù)

        說(shuō)明:git pull和git fetch的區(qū)別
image
    11)git merge dev:合并dev的內(nèi)容到本地來(lái),如果是忽略分支,則是合并當(dāng)前版本的內(nèi)容到本地來(lái)

    12)git diff:查看開發(fā)庫(kù)的代碼沖突文件(查看文件后,需要手動(dòng)合并<<<<<< ============>>>>>>>>>>中的代碼內(nèi)容)

    13)git log:查看commit日志()

        說(shuō)明:查看git log中,對(duì)應(yīng)commit的哈希值,結(jié)合git reset --hard commit_id,可以回退到對(duì)應(yīng)的commit的內(nèi)容

    14)git reset --mixed:不帶任何參數(shù)的git reset,即會(huì)回退到某個(gè)版本,只保留源碼,回退commit和index(暫存庫(kù))信息

    15)git reset --soft:回退到某個(gè)版本,只回退了commit的信息,不會(huì)恢復(fù)到index file一級(jí),如果還要提交,直接commit即可

    16)git reset --hard:徹底回退到上一個(gè)版本(后加版本號(hào)可以回退到固定版本),本地的源碼也會(huì)變?yōu)樯弦粋€(gè)版本內(nèi)容

二,git stash暫存命令:

(1)git stash save "save message"  : 執(zhí)行存儲(chǔ)時(shí),添加備注,方便查找,只有g(shù)it stash 也要可以的,但查找時(shí)不方便識(shí)別。

(2)git stash list  :查看stash了哪些存儲(chǔ)

(3)git stash show :顯示做了哪些改動(dòng),默認(rèn)show第一個(gè)存儲(chǔ),如果要顯示其他存貯,后面加stash@{$num},比如第二個(gè) git stash show stash@{1}

(4)git stash show -p : 顯示第一個(gè)存儲(chǔ)的改動(dòng),如果想顯示其他存存儲(chǔ),命令:git stash show  stash@{$num}  -p ,比如第二個(gè):git stash show  stash@{1}  -p

(5)git stash apply :應(yīng)用某個(gè)存儲(chǔ),但不會(huì)把存儲(chǔ)從存儲(chǔ)列表中刪除,默認(rèn)使用第一個(gè)存儲(chǔ),即stash@{0},如果要使用其他個(gè),git stash apply stash@{$num} , 比如第二個(gè):git stash apply stash@{1} 

(6)git stash pop :命令恢復(fù)之前緩存的工作目錄,將緩存堆棧中的對(duì)應(yīng)stash刪除,并將對(duì)應(yīng)修改應(yīng)用到當(dāng)前的工作目錄下,默認(rèn)為第一個(gè)stash,即stash@{0},如果要應(yīng)用并刪除其他stash,命令:git stash pop stash@{$num} ,比如應(yīng)用并刪除第二個(gè):git stash pop stash@{1}

(7)git stash drop stash@{$num} :丟棄stash@{$num}存儲(chǔ),從列表中刪除這個(gè)存儲(chǔ)

(8)git stash clear :刪除所有緩存的stash

三,在Git-Fork-請(qǐng)求PR

1.  在github頁(yè)面上, 點(diǎn)擊fork按鈕, 將B的項(xiàng)目拷貝一份到自己的代碼倉(cāng)庫(kù)中.

2.  克隆自己的代碼倉(cāng)庫(kù)到本地.
    $ git clone -b feature/1.0 [https://github.com/A/A.git](https://link.jianshu.com?t=https%3A%2F%2Fgithub.com%2FA%2FA.git)

3.  將源項(xiàng)目與自己的倉(cāng)庫(kù)進(jìn)行關(guān)聯(lián)(upstream 是上游倉(cāng)庫(kù)的別名,別名隨意命名)
    $ git remote add upstream [https://github.com/B/B.git](源倉(cāng)庫(kù)地址)

4.  列出當(dāng)前為復(fù)刻配置的遠(yuǎn)程倉(cāng)庫(kù).
    $ git remote -v
    $ git branch -a -vv 列出全部分支

5.  暫存已經(jīng)編輯的目錄和文件.
    $ git add .
    $ git stash
    $ git push

6.  拉取B倉(cāng)庫(kù)的新代碼
    $ git fetch upstream

7.  將源倉(cāng)庫(kù)新的部分合并到A的代碼倉(cāng)庫(kù)中, 使自己的的代碼倉(cāng)庫(kù)變成最新的代碼.
    $ git merge upstream/main

8.  查看分支,確保在自己的本地分支上
    $ git branch

9.  如果不在本地分支,則執(zhí)行 git checkout master ,如果在則忽略此步驟

10.  將剛剛暫存的代碼合并到現(xiàn)在最新的代碼中.
    $ git stash pop
    $ git stash apply stash@{0} (同時(shí)刪除stash )

11.  本地提交代碼.
    $ git add .
    $ git commit -m 提交代碼的注釋信息

12. 將源倉(cāng)庫(kù)新分支推送到自己的倉(cāng)庫(kù),并確定上傳流為自己的倉(cāng)庫(kù)
     $ git push origin develop:develop -u

13.  在A的github倉(cāng)庫(kù)頁(yè)面上,點(diǎn)擊pull request向B發(fā)起PR請(qǐng)求.



如上是第一次進(jìn)行fork、克隆代碼、創(chuàng)建關(guān)聯(lián)、修改代碼提交等操作
當(dāng)再次本地修改代碼提交時(shí),執(zhí)行步驟6-11即可


四,只設(shè)置拉取倉(cāng)庫(kù)和提交倉(cāng)庫(kù):

1. git remote set-url origin 原始倉(cāng)庫(kù)
2. git remote set-url --push origin 自己的倉(cāng)庫(kù)
添加遠(yuǎn)程倉(cāng)庫(kù):
1. git init
2. git remote add origin 遠(yuǎn)程倉(cāng)庫(kù)

git 合并忽略文件配置

1. 分支A 合并到 分支B,忽略某個(gè)文件 
2. 在A分支創(chuàng)建.gitattributes文件,并且在文件中配置忽略文件名
    ./Dockerfile merge=ours
3. 回到要合并到的分支master, 執(zhí)行命令:
  git config --global merge.ours.driver true
  git merge dev

五,git 賬號(hào)密碼配置:

1.設(shè)置git用戶名、密碼、郵箱的配置(全局配置)

查看配置:git config --list

本地配置:
git config user.name 用戶名
git config user.password 密碼
git config user.email 郵箱
全局配置:
git config --global user.name 用戶名
git config --global user.password 密碼
git config --global user.email  郵箱

2、執(zhí)行保存賬號(hào)命令

保存本地倉(cāng)庫(kù)的賬號(hào)(推薦)
git config --local credential.helper store
保存git全局賬號(hào)
git config --global credential.helper store

3,清除掉緩存在git中的用戶名和密碼

git credential-manager uninstall 和 git config --system --unset credential.helper

mac安裝homebrewd地址?

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

node版本管理工具N

npm i n -g

node.js舊版本下載:

http://nodejs.org/dist/

Zsh配置和插件:

Oh My Zsh配置和插件 終端神器Li.007

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容