日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

阿里菜鸟知识储备之二——git工具学习

發布時間:2025/3/21 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 阿里菜鸟知识储备之二——git工具学习 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

具體的可以參見這篇博客:

http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

1,什么是git

git是目前最先進的分布式版本控制系統,不同于svn的集中式版本控制

2,版本庫創建

mkdir ?gitlearn

cd gitlearn

git init (創建一個git版本庫,你可以簡單理解成一個目錄,這個目錄里面的所有文件都可以被Git管理起來,每個文件的修改、刪除,Git都能跟蹤,以便任何時刻都可以追蹤歷史,或者在將來某個時刻可以“還原”。)

3,將文件添加到版本庫

git add readme.txt

git commit ?-m "wrote a readme file"

4,查看git狀態

git status

git diff readme.txt 查看前后的修改部分

5,版本回退

git log查看提交的歷史,重點關注的是commit id(或者git reflog)

git reset --head commit_id進行版本回退

6,git的工作區和暫存區

git add命令實際上就是把要提交的所有修改放到暫存區(Stage),然后,執行git commit就可以一次性把暫存區的所有修改提交到分支

7,git撤回錯誤

場景1:當你改亂了工作區某個文件的內容,想直接丟棄工作區的修改時,用命令git checkout -- file。

場景2:當你不但改亂了工作區某個文件的內容,還添加到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset HEAD file,就回到了場景1,第二步按場景1操作。

場景3:已經提交了不合適的修改到版本庫時,想要撤銷本次提交,參考版本回退一節,不過前提是沒有推送到遠程庫。

8.git刪除文件

?命令git rm; git commit用于刪除一個文件。如果一個文件已經被提交到版本庫,那么你永遠不用擔心誤刪,但是要小心,你只能恢復文件(git checkout -- file)到最新版本,你會丟失最近一次提交后你修改的內容

9,git遠程管理

要關聯一個遠程庫,使用命令git remote add origin git@server-name:path/repo-name.git;

關聯后,使用命令git push -u origin master第一次推送master分支的所有內容;

此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;

分布式版本系統的最大好處之一是在本地工作完全不需要考慮遠程庫的存在,也就是有沒有聯網都可以正常工作,而SVN在沒有聯網的時候是拒絕干活的!當有網絡的時候,再把本地提交推送一下就完成了同步,真是太方便了!

10,先有遠程庫,創建本地庫的時候

以上講的是先有本地庫,據此創建遠程庫,如果先有遠程庫,據此建立本地庫,使用git clone命令

要克隆一個倉庫,首先必須知道倉庫的地址,然后使用git clone命令克隆。

Git支持多種協議,包括https,但通過ssh支持的原生git協議速度最快。

11,git分支合并與創建

Git鼓勵大量使用分支:

查看分支:git branch

創建分支:git branch?name

切換分支:git checkout?name

創建+切換分支:git checkout -b?name

合并某分支到當前分支:git merge?name

git merge --no-ff -m "merged bug fix 101" issue-101 :可以查看合并歷史

刪除分支:git branch -d?name

強制刪除的時候,使用git branch -D?name

12,分支沖突

當Git無法自動合并分支時,就必須首先解決沖突。解決沖突后,再提交,合并完成。

用git log --graph命令可以看到分支合并圖。

13,bug修復

修復bug時,我們會通過創建新的bug分支進行修復,然后合并,最后刪除;

當手頭工作沒有完成時,先把工作現場git stash一下,然后去修復bug,修復后,再git stash pop,回到工作現場。

14,feature分支

開發一個新feature,最好新建一個分支;

如果要丟棄一個沒有被合并過的分支,可以通過git branch -D name強行刪除。

15,多人協作

多人協作的工作模式通常是這樣:

  • 首先,可以試圖用git push origin branch-name推送自己的修改;

  • 如果推送失敗,則因為遠程分支比你的本地更新,需要先用git pull試圖合并;

  • 如果合并有沖突,則解決沖突,并在本地提交;

  • 沒有沖突或者解決掉沖突后,再用git push origin branch-name推送就能成功!

  • 如果git pull提示“no tracking information”,則說明本地分支和遠程分支的鏈接關系沒有創建,用命令git branch --set-upstream branch-name origin/branch-name。

    這就是多人協作的工作模式,一旦熟悉了,就非常簡單。

    小結

    • 查看遠程庫信息,使用git remote -v;

    • 本地新建的分支如果不推送到遠程,對其他人就是不可見的;

    • 從本地推送分支,使用git push origin branch-name,如果推送失敗,先用git pull抓取遠程的新提交;

    • 在本地創建和遠程分支對應的分支,使用git checkout -b branch-name origin/branch-name,本地和遠程分支的名稱最好一致;

    • 建立本地分支和遠程分支的關聯,使用git branch --set-upstream branch-name origin/branch-name;

    • 從遠程抓取分支,使用git pull,如果有沖突,要先處理沖突。

    轉載于:https://www.cnblogs.com/bobodeboke/p/3873398.html

    總結

    以上是生活随笔為你收集整理的阿里菜鸟知识储备之二——git工具学习的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。