Git 常用指令使用說(shuō)明

Git作為一個(gè)版本控制工具的后起之秀,目前已經(jīng)呈現(xiàn)替代SVN的趨勢(shì),如果你現(xiàn)在還在使用SVN等版本控制工具,那說(shuō)明你已經(jīng)OUT了!Git 是Linux內(nèi)核的發(fā)明人 大名鼎鼎的Linus Torvalds 為了幫助管理 Linux 內(nèi)核開(kāi)發(fā)而開(kāi)發(fā)的一個(gè)開(kāi)源碼版本控制工具。

1.Git基本概念介紹

1.1.本地庫(kù)和遠(yuǎn)程庫(kù)

本地庫(kù)(如用戶電腦端的Git庫(kù))中有本地分支(dev/master等),遠(yuǎn)程庫(kù)(Git服務(wù)器)中有遠(yuǎn)程分支(dev/master等)

1.2.commit

將代碼修改提交到本地庫(kù)

1.3.push

將本地代碼的分支更新到遠(yuǎn)程庫(kù)的代碼分支

1.4.commit and push

先執(zhí)行commit,然后執(zhí)行push,即將代碼修改提交到本地庫(kù),同時(shí) 將本地代碼的分支更新到遠(yuǎn)程庫(kù)的代碼分支

1.5. pull

將遠(yuǎn)程代碼庫(kù)的分支更新到本地分支

1.6. merge

將本地代碼的某個(gè)分支合并到本地的另一個(gè)代碼分支,如將dev合并到master分支

1.7 origin

origin可以理解為git遠(yuǎn)程倉(cāng)庫(kù)的名字,比如master指本地master分支,origin/master指遠(yuǎn)程倉(cāng)庫(kù)的master的分支。

2.常用Git操作指令:

2.1.下載git服務(wù)器上的代碼項(xiàng)目

假如項(xiàng)目地址為 http://git.mydemo.cn/demo.git.
git clone http://git.mydemo.cn/demo.git

2.2.pull dev分支

git pull origin dev:dev

2.3.根據(jù)當(dāng)前dev分支生成新的的代碼dev2分支

git checkout -b dev2 // (假如目前所在分支為dev)

2.4.合并dev到dev2分支

git merge dev2 //(假如目前所在分支為dev)

2.5.commit本地dev分支至遠(yuǎn)程dev分支

git push origin dev:dev

2.6.合并dev分支到master分支并push遠(yuǎn)程master,合并之前必須保證代碼質(zhì)量

git merge dev //(假如目前所在分支為dev)

git push origin master:master

2.7.將遠(yuǎn)程dev分支拉取到本地dev分支

git fetch origin dev:dev

2.8.從dev分支切換dev2分支或dev-tag-01

git checkout dev2 //(假如目前所在分支為dev)
git checkout dev-tag-01

2.9. 顯示當(dāng)前git庫(kù)的狀態(tài)

git status

2.10.查看本地全部分支,目前所在分支前有*標(biāo)記

git branch

2.11.查看本地全部遠(yuǎn)程分支,目前所在分支前有*標(biāo)記

git branch -a

2.12 查看項(xiàng)目所在的遠(yuǎn)程地址

git remote -v

2.13 將本地項(xiàng)目綁定到遠(yuǎn)程git倉(cāng)庫(kù)
  1. git init // 首次添加時(shí),若沒(méi)有執(zhí)行g(shù)it init 會(huì)提示fatal: Not a git repository (or any of the parent directories): .git
  2. git remote add origin http://git.xxx.cn/learn.git
2.14 代碼回退到某個(gè)commit版本

git reset --hard 1242354365ab23434546 回退到版本為1242354365ab23434546的歷史版本

2.15 git pull和git fetch區(qū)別

git fetch:是將遠(yuǎn)程主機(jī)的最新內(nèi)容拉到本地,用戶在檢查了以后決定是否合并到工作本機(jī)分支中。

git pull: 則是將遠(yuǎn)程主機(jī)的最新內(nèi)容拉下來(lái)后直接合并,即:git pull = git fetch + git merge,這樣可能會(huì)產(chǎn)生沖突,需要手動(dòng)解決。

2.16 基于tag創(chuàng)建分支

git branch branch_name tag_v1.0.0

3.最佳實(shí)踐

git pull origin dev // 拉取遠(yuǎn)程分支
git add * // 提交哪些文件,*表示提交所有修改的文件
git commit -m "bugfix-nullException" // 提交代碼到本地倉(cāng)庫(kù)
git push origin dev // 提交代碼到遠(yuǎn)程origin倉(cāng)庫(kù)

最后編輯于
?著作權(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)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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