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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

真正理解 git fetch, git pull 以及 FETCH_HEAD

發布時間:2023/12/18 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 真正理解 git fetch, git pull 以及 FETCH_HEAD 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。

真正理解 git fetch, git pull?

要講清楚git fetch,git pull,必須要附加講清楚git remote,git merge 、遠程repo, branch 、 commit-id 以及?FETCH_HEAD。

1. 【git remote】首先, git是一個分布式的結構,這意味著本地和遠程是一個相對的名稱。

本地的repo倉庫要與遠程的repo配合完成版本對應必須要有 git remote子命令,通過git remote add來添加當前本地長度的遠程repo, 有了這個動作本地的repo就知道了當遇到git push 的時候應該往哪里提交代碼。

2. 【git branch】其次,git天生就是為了多版本分支管理而創造的,因此分支一說,不得不提, 分支就相當于是為了單獨記錄軟件的某一個發布版本而存在的,既然git是分布式的,便有了本地分支和遠程分支一說,git branch 可以查看本地分支, git branch -r ?可以用來查看遠程分支。 本地分支和遠程分支在git push 的時候可以隨意指定,交錯對應,只要不出現版本從圖即可。

3. 【git merge】再者,git的分布式結構也非常適合多人合作開發不同的功能模塊,此時如果每個人都在其各自的分支上開發一個相對獨立的模塊的話,在每次release制作時都需先將各成員的模塊做一個合并操作,用于合并各成員的工作成果,完成集成。 此時需要的就是git merge.

4.【git push 和 commit-id】在每次本地工作完成后,都會做一個git commit 操作來保存當前工作到本地的repo, 此時會產生一個commit-id,這是一個能唯一標識一個版本的序列號。 在使用git push后,這個序列號還會同步到遠程repo。

在理解了以上git要素之后,分析git fetch 和 git pull 就不再困難了。?

?

首先,git fetch 有四種基本用法

1. git fetch ? ? ? ? ? ?→→?這將更新git remote 中所有的遠程repo 所包含分支的最新commit-id, 將其記錄到.git/FETCH_HEAD文件中

2. git fetch remote_repo ? ? ? ??→→ 這將更新名稱為remote_repo 的遠程repo上的所有branch的最新commit-id,將其記錄。?

3. git fetch remote_repo remote_branch_name ? ? ? ?→→ 這將這將更新名稱為remote_repo 的遠程repo上的分支: remote_branch_name

4. git fetch remote_repo remote_branch_name:local_branch_name ? ? ??→→?這將這將更新名稱為remote_repo 的遠程repo上的分支: remote_branch_name ,并在本地創建local_branch_name 本地分支保存遠端分支的所有數據。

?

FETCH_HEAD:?是一個版本鏈接,記錄在本地的一個文件中,指向著目前已經從遠程倉庫取下來的分支的末端版本。

?

git pull 的運行過程:

git pull : 首先,基于本地的FETCH_HEAD記錄,比對本地的FETCH_HEAD記錄與遠程倉庫的版本號,然后git fetch 獲得當前指向的遠程分支的后續版本的數據,然后再利用git merge將其與本地的當前分支合并。

?

參考鏈接 : ?

1.https://ruby-china.org/topics/4768

2.http://stackoverflow.com/questions/9237348/what-does-fetch-head-in-git-mean

?


轉自:?http://www.cnblogs.com/todototry/?

總結

以上是生活随笔為你收集整理的真正理解 git fetch, git pull 以及 FETCH_HEAD的全部內容,希望文章能夠幫你解決所遇到的問題。

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