欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

三、分支管理、遠(yuǎn)程分支管理、標(biāo)簽管理、git別名

系統(tǒng)運(yùn)維

一、分支管理

成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括文安網(wǎng)站建設(shè)、文安網(wǎng)站制作、文安網(wǎng)頁制作以及文安網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,文安網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到文安省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
#?cd?/data/gitroot
#?git?branch???//查看當(dāng)前倉庫的分支
*?master????????//這兒只有一行,*號當(dāng)前所在的分支是哪個(gè)
#?git?branch?aming?????//創(chuàng)建分支,名字叫aming
#?git?branch?
??aming
*?master

//*號還在master,說明還在maser分支上

#?git?checkout?aming???//git?checkout,切換分支
切換到分支?\'aming\'
#?git?branch???//再查看分支,*號已經(jīng)到了aming了
*?aming
??master
#?ls???//當(dāng)前分支和master里的文件是一樣的
1.txt
#?vim?2.txt????//在aming分支下寫一個(gè)新的文件
#?git?add?.
#?git?commit?-m?add?2.txt???//要把變更搞到版本庫里去,只需要git?commit就可以了。
[root@MRX?gitroot]#?ls
1.txt??2.txt
[root@MRX?gitroot]#?git?checkout?master?
切換到分支?\'master\'
[root@MRX?gitroot]#?ls???//切換到master下查看是沒有2.txt的
1.txt

分支是相互隔離開的,分支與分支之間操作文件是互相不受影響的。

分支合并

aming分支做了變更,master分支沒有做,現(xiàn)在想讓兩個(gè)分支變化是一樣的,可以用合并分支。把a(bǔ)ming分支合并到master分支上去,這兩個(gè)分支就保持一致了。

#?git?checkout?master???//合并分支之前,先切換到目標(biāo)分支
#?git?merge?aming???//把a(bǔ)ming分支里的變更合并到master里來。

如果master分支和aming分支都對2.txt進(jìn)行了編輯,當(dāng)合并時(shí)會提示沖突,需要先解決沖突才能繼續(xù)合并。

解決沖突的方法是在master分支下,編輯2.txt,改為aming分支里面2.txt的內(nèi)容。 然后提交2.txt,再合并aming分支。

但是這樣有一個(gè)問題,萬一master分支更改的內(nèi)容是我們想要的呢? 可以編輯2.txt內(nèi)容,改為想要的,然后提交。切換到aming分支,然后合并master分支到aming分支即可(倒著合并)。合并分支有一個(gè)原則,那就是要把最新的分支合并到舊的分支。也就是說merge后面跟的分支名字一定是最新的分支。掌握這個(gè)原則,就不會出錯。

#?git?branch
??aming
*?master
[root@MRX?gitroot]#?vim?2.txt???//master分支下的2.txt增加了幾行
uipad
uviadp
euqpvan
4989496
hgiasd
iahusdf
#?git?add?2.txt
#?git?commit?-m?ch?2.txt
#?git?checkout?aming
#?vim?2.txt????//aming分支下的2.txt刪除了幾行
uipad
uviadp
euqpvan
#?git?add?2.txt
#?git?commit?-m?ch?2.txt
#?git?checkout?master
#?git?merge?aming?
自動合并?2.txt
沖突(內(nèi)容):合并沖突于?2.txt
自動合并失敗,修正沖突然后提交修正的結(jié)果。
#?cat?2.txt????//此時(shí)2.txt里不同部分的內(nèi)容會自動被標(biāo)記出來。
uipad
uviadp
euqpvan
<<<<<<<?HEAD
4989496
hgiasd
iahusdf
=======
>>>>>>>?aming
[root@MRX?gitroot]#?vim?2.txt?
uipad
uviadp
euqpvan
#?git?checkout?aming
2.txt:?needs?merge
error:?您需要先解決當(dāng)前索引的沖突
//這里又一個(gè)問題,當(dāng)你合并有沖突時(shí),你不能切換到另一個(gè)分支下去。所以盡量避免發(fā)生合并沖突
#?git?add?2.txt
#?git?commit?-m?ch?2.txt
#?git?checkout?aming
切換到分支?\'aming\'
#?git?merge?aming???//兩個(gè)分支內(nèi)容保持一致了,再來合并就不會產(chǎn)生任何變化。
Already?up-to-date.

# git branch -d aming //刪除分支。如果正在當(dāng)前分支下,則無法刪除當(dāng)前分支,切換到另一個(gè)分支即可。

如果分支沒有合并,刪除之前會提示,那就不合并,強(qiáng)制刪除:

# git branch -D aming

二、遠(yuǎn)程分支管理

使用分支的原則

對于分支的應(yīng)用,建議以這樣的原則來:

master分支是非常重要的,線上發(fā)布代碼用這個(gè)分支,平時(shí)我們開發(fā)代碼不要在這個(gè)分支上。

創(chuàng)建一個(gè)dev分支,專門用作開發(fā),只有當(dāng)發(fā)布到線上之前,才會把dev分支合并到master

開發(fā)人員應(yīng)該在dev的基礎(chǔ)上再分支成個(gè)人分支,個(gè)人分支(在自己pc上)里面開發(fā)代碼,然后合并到dev分支。

dev分支合并bob分支的命令是:

#?git?checkout?dev???//先切換到dev分支,然后
#?git?merge?bob

遠(yuǎn)程分支

本地新建的分支如果不推送到遠(yuǎn)程,對其他人就是不可見的。

常識:git clone只能克隆一個(gè)master的分支。

創(chuàng)建一個(gè)新文件linux.doc和一個(gè)新分支dev。

創(chuàng)建分支成功后,再次點(diǎn)擊,可以看到對勾在dev的前面,這里可以選擇更換分支。

再回到命令行下查看分支,先將這個(gè)項(xiàng)目克隆,可以發(fā)現(xiàn)只有一個(gè)master分支。

查看遠(yuǎn)程分支 git ls-remote origin,可以看到所有分支。

#?git?ls-remote?origin
45337b0d65a36760796a0f3a45e3f90e1d38ed4e	HEAD
41b9784a6f7aeecb1d485e956b10232b5114592a	refs/heads/dev
45337b0d65a36760796a0f3a45e3f90e1d38ed4e	refs/heads/master

對于git push分支分兩種情況

當(dāng)本地分支和遠(yuǎn)程分支一致時(shí),git push會把所有本地分支的變更一同推送到遠(yuǎn)程,比如master和dev。

如果想只推送一個(gè)分支,使用git push origin branch-name。

當(dāng)本地分支比遠(yuǎn)程分支多,默認(rèn)git push只推送本地和遠(yuǎn)程一致的分支,想要把多出來的本地分支推送到遠(yuǎn)程時(shí),使用git push origin branch-name 如果推送失敗,先用git pull抓取遠(yuǎn)程的新提交。

git clone的時(shí)候默認(rèn)只把master分支克隆下來,如果想把所有分支都克隆下來,需要手動創(chuàng)建,在本地創(chuàng)建和遠(yuǎn)程分支對應(yīng)的分支,使用git checkout -b branch-name origin/branch-name,本地和遠(yuǎn)程分支的名稱要一致。這里的兩個(gè)branch-name指遠(yuǎn)程分支的名字。

#?git?checkout?-b?dev?origin/dev
分支?dev?設(shè)置為跟蹤來自?origin?的遠(yuǎn)程分支?dev。
切換到一個(gè)新分支?\'dev\'
#?vim?4.txt
#?git?add?4.txt
#?git?commit?-m?add?4.txt
#?git?push
0b51fcb..43fd64d??dev?->?dev???//git?push后,最后一行可以看到從dev推送到了dev。
再到遠(yuǎn)程上刷新,可以看到dev分支下出現(xiàn)了4.txt,而master是沒有的。

三、標(biāo)簽管理

標(biāo)簽類似于快照功能,可以給版本庫打一個(gè)標(biāo)簽,記錄某個(gè)時(shí)刻庫的狀態(tài)。也可以隨時(shí)恢復(fù)到該狀態(tài)。

git?checkout?master?先切換到master分支上,以后打標(biāo)簽也是針對master分支來做。
?git?tag?v1.0??給master打一個(gè)標(biāo)簽v1.0
?git?show?v1.0?查看標(biāo)簽信息
?git?tag??查看當(dāng)前分支下所有的標(biāo)簽
?tag是針對commit來打標(biāo)簽的,所以可以針對歷史的commit來打tag,v1.0是對最新的版本打的標(biāo)簽。
?git?log?--pretty=oneline?--abbrev-commit??//先查看歷史的commit,這里后面的選項(xiàng)指用簡寫的commit。
?git?tag?v0.9?46d3c1a??//針對歷史commit打標(biāo)簽
?git?tag?-a?v0.1?-m?first?tag?2ec587f??//可以對標(biāo)簽進(jìn)行描述
#?git?show?v0.1
tag?v0.1
Tagger:?aming?
Date:???Thu?Sep?19?11:06:29?2019?+0800

first?tag???//查看標(biāo)簽信息可以看到描述

commit?2ec587ff6e9e0e4c67aefb84e02b2b73693d633e
Author:?aming?
Date:???Sun?Sep?8?14:59:15?2019?+0800

????first?commit

diff?--git?a/README.md?b/README.md
new?file?mode?100644
index?0000000..6f0cbde
---?/dev/null
+++?b/README.md
@@?-0,0?+1?@@
+#?apelearn

git tag -d v0.8 ?//刪除標(biāo)簽

前面的操作都是在客戶端,還沒有推送到遠(yuǎn)程服務(wù)端。

查看遠(yuǎn)程上的tags方法,在切換分支的選項(xiàng)里:

git push origin v1.0 ? //推送指定標(biāo)簽到遠(yuǎn)程

git push --tag origin ? //推送所有標(biāo)簽

如果本地刪除了一個(gè)標(biāo)簽,遠(yuǎn)程也想要刪除需要這樣操作:

git tag v0.8 -d ? ?//刪除本地標(biāo)簽

git push origin :refs/tags/v0.8 ? //刪除遠(yuǎn)程標(biāo)簽

四、git別名

git?commit?這個(gè)命令可以用別名表示,用別名可以提高我們的工作效率。
格式:
?git?config?--global?alias.別名??命令名
?git?config?--global?alias.ci?commit
?git?config?--global?alias.co?checkout
?git?config?--global?alias.br?branch
?這些別名的配置都在/root/.gitconfig文件中,可以在文件內(nèi)進(jìn)行更改。
?
?查看git別名使用命令
?git?config?--list?|grep?alias
?查詢log小技巧:
#?git?config?--global?alias.lg?log?--color?--graph?--pretty=format:\'%Cred%h%Creset?-%C(yellow)%d%Creset?%s?%Cgreen(%cr)?%C(bold?blue)<%an>%Creset\'?--abbrev-commit
#?git?lg???//可以看到用戶,時(shí)間,描述和tag。
*?45337b0?-?(HEAD,?tag:?v1.0,?origin/master,?origin/HEAD,?master)?add?3.txt?(6?天之前)?
*?41b9784?-?Create?linux.doc?(7?天之前)?
*?d816b47?-?add?1.txt?(13?天之前)?
*?0c8b170?-?add?2.txt?(13?天之前)?
*?2ec587f?-?first?commit?(13?天之前)?
??取消別名
?git?config?--global?--unset?alias.br

總結(jié):

分支管理

git branch ?查看分支

git checkout master ?切換分支

git merge aming ?把a(bǔ)ming分支里的變更合并到master里來

git branch -d aming ?刪除分支

git branch -D aming ?強(qiáng)制刪除分支

遠(yuǎn)程分支管理

git ls-remote origin ?查看遠(yuǎn)程分支

git push origin branch-name ?推送單個(gè)分支

在本地創(chuàng)建和遠(yuǎn)程分支對應(yīng)的分支,使用git checkout -b branch-name origin/branch-name

標(biāo)簽管理

git tag v1.0 ?給master分支打一個(gè)標(biāo)簽v1.0

git show v1.0 ?查看標(biāo)簽信息

git tag ?查看所有標(biāo)簽

git log --pretty=oneline --abbrev-commit ?查看歷史的commit

git tag -a v1.0 -m first tag 2ec587f ?對標(biāo)簽做描述

git tag -d v0.8 ?刪除標(biāo)簽

git push origin v1.0 ? 推送指定標(biāo)簽到遠(yuǎn)程

git push --tag origin ? 推送所有標(biāo)簽

git tag v0.8 -d ? ?刪除本地標(biāo)簽

git push origin :refs/tags/v0.8 ? 刪除遠(yuǎn)程標(biāo)簽

git別名

git config --global alias.別名 ?命令名

git config --list |grep alias ?查看別名

git config --global --unset alias.br

新聞標(biāo)題:三、分支管理、遠(yuǎn)程分支管理、標(biāo)簽管理、git別名
轉(zhuǎn)載源于:http://chinadenli.net/article22/cjeojc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站用戶體驗(yàn)網(wǎng)站排名全網(wǎng)營銷推廣網(wǎng)頁設(shè)計(jì)公司手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)