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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

git入门-分支

發(fā)布時間:2025/3/20 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 git入门-分支 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1. git分支簡介

使用分支可以讓你從開發(fā)主線上分離開來,然后在新的分支上解決特定問題,同時不會影響主線。像其它的一些版本控制系統(tǒng),創(chuàng)建分支需要創(chuàng)建整個源代碼目錄的副本。而Git 的分支是很輕量級的,因?yàn)镚it保存的不是文件差異,而是一系列文件快照。在Git提交時,會保存一個commit對象,該對象包含一個指向暫存內(nèi)容快照的指針,Git 會先計算每一個子目錄的校驗(yàn)和( SHA-1 哈希字串),然后在 Git 倉庫中將這些目錄保存為樹(tree)對象。之后 Git 創(chuàng)建的提交對象,除了包含相關(guān)提交信息以外,還包含著指向這個樹對象的指針,如此它就可以在將來需要的時候,重現(xiàn)此次快照的內(nèi)容了。Git 中的分支,其實(shí)本質(zhì)上是個指向 commit 對象的可變指針,Git 會使用 master 作為分支的默認(rèn)名字,
它在每次提交的時候都會自動移動,指向最后一次提交對象。Git使用一個名為HEAD的指針,指向你正在工作的本地分支,這樣你就可以知道當(dāng)前在哪個分支下面工作。

2. 創(chuàng)建分支

1 git branch dev

上面操作會在當(dāng)前的commit對象上新建一個名為dev的分支指針,但是僅僅是創(chuàng)建了該分支,并沒有切換到dev分支,此時你還在master分支。

3. 切換分支

1 git checkout dev

此時切換到了新建的dev分支,即HEAD指向了dev分支。
ps:可以加上-b參數(shù)

1 git checkout -b dev

相當(dāng)于執(zhí)行

1 2 git branch dev git checkout dev

現(xiàn)在我們在當(dāng)前目錄下進(jìn)行下面的操作:

1 2 3 vim?test.py git add?test.py git commit -m?"add test.py"

我們在當(dāng)前目錄下新建了test.py文件,并添加到本地倉庫,注意:現(xiàn)在dev分支移動了一格,而master分支還指向原來的commit對象,test.py文件只屬于dev分支,master分支并沒有該文件。
現(xiàn)在切換到master分支

1 git checkout master

可以看到當(dāng)前目錄下是沒有test.py文件的。因?yàn)镚it 會把工作目錄的內(nèi)容恢復(fù)為檢出某分支時它所指向的那個提交對象的快照,它會自動添加、刪除和修改文件以確保目錄的內(nèi)容和你當(dāng)時提交時完全一樣。

4. 合并分支

使用dev分支完成一些需求后,需要回到開發(fā)主線把它合并到master分支。

1 git merge dev

ps:需切換到master分支
合并時出現(xiàn)了“Fast-forward”的提示,因?yàn)楫?dāng)前master分支所在的提交對象是要并入的分支dev的直接上游,換句話說,如果順著一個分支直走下去可以到達(dá)另一分支的話,合并兩者時不存在任何需要解決的分歧,只需簡單的移動指針,這種合并過程稱為“Fast-forward”。如果當(dāng)前master分支所指向的提交對象不是dev分支的直接祖先,Git需要做一些額外處理,Git會用兩個分支的末端和它們的共同祖先進(jìn)行一次簡單的三方合并,并做一個新的快照,自動創(chuàng)建一個指向它的提交對象。這個對象有兩個祖先,即之前兩個分支的末端。合并之后,dev分支和master分支指向同一位置,master分支指向的提交對象就是最新的修改了。

如果不同分支修改了同一文件,合并時可能會遇到?jīng)_突,此時Git做了合并,但是并沒有提交。使用git status查看哪些文件發(fā)生了沖突。解決了所有的沖突后,執(zhí)行g(shù)it add將它們添加到暫存區(qū)域,因?yàn)橐坏捍婢捅硎緵_突已解決,然后使用git commit完成這次合并的提交。

5. 刪除分支

1 git branch -d dev

6. 分支管理

6.1 列出當(dāng)前所有分支的清單

1 2 3 4 git branch dev * master

master分支前的*字符:表示當(dāng)前所在的分支。

6.2 查看各個分支最后一個提交對象的信息

1 2 3 4 git branch -v dev [7e90b1 add helloworld.java * master c7e90b1 [ahead 1] add helloworld.java

6.3 查看已經(jīng)與當(dāng)前分支合并的分支

1 2 3 4 git branch --merged dev * master

6.4 查看已經(jīng)與當(dāng)前分支未合并的分支

1 git branch --no-merged

7. 遠(yuǎn)程分支

7.1 查看遠(yuǎn)程分支

1 2 3 4 git branch -r origin/HEAD -> origin/master origin/master

7.2 創(chuàng)建遠(yuǎn)程分支
即把本地分支推送到遠(yuǎn)程

1 2 3 4 5 6 git push origin dev git branch -r origin/HEAD -> origin/master origin/dev origin/master

看到已把dev分支成功push到服務(wù)器上

7.3 同步遠(yuǎn)程服務(wù)器上的數(shù)據(jù)到本地

1 git fetch origin

7.4 跟蹤遠(yuǎn)程分支
從遠(yuǎn)程拉取dev分支到本地,并切換到dev分支,ps:需要git1.6.2以上版本

1 git checkout --track origin/dev

從遠(yuǎn)程拉取dev分支到本地,命名為develop,并切換到develop分支

1 git checkout -b develop origin/dev

7.5 提交本地分支數(shù)據(jù)到遠(yuǎn)程服務(wù)器
git push origin local:remote

1 git push origin dev:dev

如果當(dāng)前是在dev分支下工作,可直接git push

7.6 刪除遠(yuǎn)程分支

1 git push origin :dev

8. 分支的衍合

把一個分支整合到另一個分支有兩種方法:merge和rebase(衍合)
前面已經(jīng)介紹過,merge是把兩個分支最新的快照和二者最新的共同祖先進(jìn)行三方合并,產(chǎn)生一個新的提交對象。rebase是回到兩個分支的共同祖先,根據(jù)要進(jìn)行衍合的分支dev的歷次提交對象,生成一系列文件補(bǔ)丁,然后以主干分支master的最后一個提交對象為新的出發(fā)點(diǎn),逐個應(yīng)用dev分支準(zhǔn)備好的補(bǔ)丁文件,生成一個新的提交對象,改寫dev的提交歷史,使dev成為master的直接下游。然后回到master分支,進(jìn)行一次快進(jìn)合并。這樣能夠保持更加清晰的提交記錄,就像沒有使用過分支一樣。

1 2 git checkout dev git rebase master

ps:可以把衍合當(dāng)作一種在推送之前清理提交歷史的手段,如果分支中的提交對象已經(jīng)發(fā)布到服務(wù)端,就千萬不要對該分支進(jìn)行衍合。

轉(zhuǎn)載于:https://www.cnblogs.com/wanghuaijun/p/5623023.html

總結(jié)

以上是生活随笔為你收集整理的git入门-分支的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产av电影一区二区三区 | 黄色免费在线网站 | 久久午夜视频 | 亚洲欧美乱综合图片区小说区 | 日韩精品一区二区三区丰满 | 国产又爽又黄无码无遮挡在线观看 | 加勒比色综合 | 国产成人精品无码免费看夜聊软件 | 丁香色综合 | 免费视频久久久 | 亚洲依依 | 干成人网 | 伊人伊色| 加勒比视频在线观看 | 国产传媒视频在线 | 一区二区三区欧美视频 | 日本wwwxx| 成人在线观看国产 | 精品国自产在线观看 | 欧美精品色婷婷五月综合 | 欧美 日韩 国产 在线 | 国产精品无码一区 | 狠狠躁| 欧美亚洲综合一区 | 免费av入口 | 精品国产无码在线 | 国产免费网| 日本黄色生活片 | 谁有免费黄色网址 | 中文字幕人妻无码系列第三区 | 日日噜噜噜 | 色婷婷欧美 | 日韩三级成人 | 久久久久久久久久久久久久久久久 | 深夜福利一区 | 久久阁| 中国女人性猛交 | www中文在线 | 人妻天天爽夜夜爽一区二区三区 | 亚洲一卡二卡三卡四卡 | 精品久久久中文字幕人妻 | 日本中文字幕在线播放 | 狼人av在线 | 欧美性猛交xxx乱久交 | 国产精品黄视频 | 色涩网站| 欧美老女人性生活视频 | 亚洲h视频在线观看 | 欧美一区二区三区婷婷月色 | 色视屏| 97视频 | jzzijzzij亚洲成熟少妇在线播放 狠狠躁日日躁夜夜躁2022麻豆 | 香蕉网av | 麻豆成人精品国产免费 | 亚洲无码高清精品 | 婷婷天堂 | 欧美人体一区二区 | 免费视频91蜜桃 | 国产精品无码一区二区无人区多人 | 免费观看毛片网站 | 中文字幕女同女同女同 | 人妻一区二区三区在线 | 国产三级全黄裸体 | 高h捆绑拘束调教小说 | 中文字幕一区二区三区免费视频 | 99综合网 | 日韩专区第一页 | 中国女人内谢69xxxx免费视频 | 自拍偷拍激情 | 日本做爰高潮又黄又爽 | 正在播放国产精品 | 国模视频在线 | 电影《走路上学》免费 | 中文字幕一区二区不卡 | 手机av不卡 | 日本黄色一级 | 黑丝国产在线 | 黑人一级女人全片 | 亚洲巨乳av| av动漫在线免费观看 | 隔壁邻居是巨爆乳寡妇 | www.久久久久久久久久 | 日韩孕交| 国产无人区码熟妇毛片多 | 手机在线看片日韩 | 精品一区二区久久久久久按摩 | 特黄视频免费看 | 欧美激情图 | 国产福利视频导航 | 国产欧美日韩综合精品一区 | www色| 国产精品99精品久久免费 | 绿色地狱在线观看 | 日韩av影视大全 | 国产美女精品一区二区三区 | 亚洲天堂中文字幕在线 | 美丽的姑娘观看在线播放 | 国产91丝袜在线18 | 欧美性在线观看 |