sourceTree的倉庫管理

第一步遠(yuǎn)程拉取上一篇安裝配置的時(shí)候已經(jīng)講過了,這邊就不再多說了

項(xiàng)目克隆完成之后,我們拉取的是master分支上的代碼梳猪,由于master分支是主分支,項(xiàng)目多人開發(fā)的情況下蒸痹,很容易造成沖突春弥。
所以我們一般會在gitlab遠(yuǎn)程新建一個(gè)自己的分支,如命名為:dev。

創(chuàng)建分支

(1)叠荠、新建自己的遠(yuǎn)程開發(fā)分支并在sourcetree中切換到該分支匿沛;如圖
image.png
博主錯(cuò)誤糾正.png

推送分支

2.將分支推送到遠(yuǎn)程
(第2步勾選后的下拉框是可以選擇推送到指定分支的)


推送.png

然后點(diǎn)擊推送即可

如果想查看遠(yuǎn)程倉庫有的所有分支,點(diǎn)擊獲取即可


image.png
image.png

檢出別人分支

3.點(diǎn)擊別人的分支榛鼎,可以檢出
檢出別人提交的分支.png

檢出別人提交的分支2.png

你可以在此分支點(diǎn)擊獲取逃呼,查看別人開發(fā)的代碼


上面已經(jīng)涉及到一些基本操作,這邊再做一些補(bǔ)充

基本操作(界面暫存區(qū)者娱、本地倉庫和遠(yuǎn)程倉庫的認(rèn)識)

基本認(rèn)識.png

image.png

推送分支方式補(bǔ)充

可以直接右鍵分支推送
image.png

刪除分支

1.本地刪除
右鍵目標(biāo)分支抡笼,刪除即可。
注意:這里的刪除是本地刪除黄鳍,不影響遠(yuǎn)程倉庫推姻。另外,當(dāng)你切換到目標(biāo)分支時(shí)框沟,不能進(jìn)行刪除操作藏古。


本地刪除.png

2.遠(yuǎn)程刪除
右鍵目標(biāo)分支增炭,刪除即可。這里是刪除遠(yuǎn)程分支拧晕。慎重隙姿。


遠(yuǎn)程刪除.png

另外遠(yuǎn)程不是你創(chuàng)建的分支你是沒有權(quán)限刪除的!

打標(biāo)簽

我們發(fā)布完版本后防症,可以給此次版本打上標(biāo)簽曹铃,這樣你在歷史記錄中可以清晰看到你的標(biāo)簽叛拷,更加醒目的做出管理

1.我們先修改一下master的readme文檔,為下文沖突做準(zhǔn)備,操作如圖
修改readme.png

2.提交到本地倉庫
提交到本地倉庫.png

3.將修改合并到主支master
將修改合并到主支master.png

將修改合并到主支master2.png

將修改合并到主支master后圖譜.png

遠(yuǎn)程狀態(tài).png

4.正文給master添加標(biāo)簽
打標(biāo)簽.png

打標(biāo)簽2.png

倉庫管理必不可少要配置忽略文件阻课,避免不必要的文件影響性能和倉庫整潔度

使用sourcetree添加忽略文件的方法,如圖:
忽略文件配置.png

忽略文件中有 忽略文件夾和單個(gè)文件暮胧,如圖:
忽略文件配置2.png

開發(fā)的過程中可能遇到一些忽略文件中未添加的文件胜臊,此時(shí)需要開發(fā)者自行添加忽略文件,添加方法如下:
之前已經(jīng)介紹過未進(jìn)行版本控制的或者受版本控制的文件裙犹,在sourcetree的“文件狀態(tài)” 標(biāo)簽中查找尽狠,如圖所示:


image.png

鼠標(biāo)右鍵要忽略的文件,點(diǎn)擊“忽略”叶圃,選擇忽略的模式袄膏,即可將文件進(jìn)行忽略,如圖所示:


image.png

常見代碼合并情況

1.當(dāng)多個(gè)人一起開發(fā)掺冠,a可能開發(fā)a模塊沉馆,b可能開發(fā)b模塊;但是當(dāng)開發(fā)完后需要提交德崭,這兩個(gè)人開發(fā)的其實(shí)是一個(gè)版本斥黑,所以我們要合并代碼提交

例如:我現(xiàn)在在demo用戶,我需要將github的代碼合并到我這眉厨,我需要點(diǎn)擊進(jìn)入我demo的分支锌奴,然后右鍵github選擇合并他的分支到我當(dāng)前分支,如圖
image.png

合并完憾股,就可以推送上去了鹿蜀!

2.當(dāng)用戶進(jìn)行新的版本的開發(fā),但是master的項(xiàng)目出現(xiàn)了bug要修復(fù)

我們當(dāng)然不能再開發(fā)中的分支去修改服球,這樣未經(jīng)審核的代碼提交會對線上的版本造成無法估計(jì)的后果耻姥,所以我們應(yīng)該重新拉取master創(chuàng)建新的master分支,修改后合并到master

參考圖片:
image.png

補(bǔ)充方法有咨,利用暫存(stash)
1.如果有未提交的修改琐簇,則將現(xiàn)場先暫存(stash)
2.創(chuàng)建一個(gè)新分支fixBug,專門用于解決bug
3.將fixBug分支分別合并到dev分支和master分支
4.恢復(fù)現(xiàn)場
這里我就不多說了,盜圖,因?yàn)樗v得非常清晰


image.png

image.png

image.png

image.png

image.png

image.png
3.解決沖突

多人開發(fā)時(shí)婉商,由于修改了同一個(gè)文件似忧,可能會有文件沖突的情況。
拉取代碼時(shí)丈秩,會有沖突提示盯捌,解決完相關(guān)的沖突文件,重新提交即可蘑秽。

看到有篇文章的博主遇到過這樣的問題饺著,如圖
錯(cuò)誤解決沖突例子.png

相信很多剛?cè)腴T的小朋友也遇到過,現(xiàn)在我們來總結(jié)下正確的操作

首先我們來看一下肠牲,什么情況表明你的文件沖突了如圖:
image.png
image.png

解決沖突先要安裝 Beyond compare插件

方法一:利用Beyond compare工具解決沖突

1.選擇沖突文件(感嘆號文件)->右鍵解決沖突->打開外部合并工具幼衰,打開工具
image.png

注意:如果未安裝會報(bào)錯(cuò),請按上文安裝插件并配置

2.沖突插件界面缀雳,下拉框老是截不出來渡嚣,只好盜圖了
image.png
這里主要讓看上邊的菜單,你可以選擇查看什么
然后肥印,在相關(guān)的版本處识椰,選中”沖突行”,合并區(qū)默認(rèn)處于合并位置深碱,鼠標(biāo)右鍵腹鹉,選擇最終沖突地方留下的內(nèi)容,如圖:
image.png

image.png

3.保存會話后關(guān)閉界面敷硅,重新commit沖突解決后的文件种蘸,并推送到遠(yuǎn)程

方法二:針對一些簡單的沖突

如果沖突非常少,可以直接在右側(cè)欄中解決沖突竞膳,如圖所示:
image.png

1.點(diǎn)擊未暫存區(qū)域的沖突文件
2.右側(cè)列表中出現(xiàn)沖突的內(nèi)容。
3.選擇沖突內(nèi)容诫硕,解決沖突坦辟,如圖所示:


image.png

暫存行:表示保留該內(nèi)容
丟棄行:表示刪除該內(nèi)容

備注:區(qū)分于第一種方式,使用第一種方法解決時(shí)章办,不要點(diǎn)擊”未暫存文件”,否則可能無法打開沖突文件

4.錯(cuò)誤提交到本地倉庫
回滾.png
確定.png
回滾后.png
5.版本回退

原則上锉走,代碼推送之前要保證本地的代碼可運(yùn)行,不要將不可運(yùn)行或者有問題的代碼推送到服務(wù)器上藕届,如果由于誤操作挪蹭,將代碼推送到了遠(yuǎn)程,想重新修改上傳代碼休偶,此時(shí)梁厉,需要將版本進(jìn)行回退,回退方法如圖:
image.png

1、切換到日志/歷史標(biāo)簽
2词顾、選擇要恢復(fù)到的版本八秃,如圖藍(lán)色位置
3、鼠標(biāo)右鍵肉盹,選擇“重置當(dāng)前分支到此次提交”

4昔驱、選擇”重置模式”,如圖所示
image.png

5上忍、彈出框中選擇”Yes”
確認(rèn)回退版本.png

注意:請不要輕易嘗試

5.merge

先插曲科普下merge骤肛,博主找了張圖可以很清楚的說明merge,順帶科普了cherry pick
merge&cherry pick.png

額外補(bǔ)充你必須要知道的SourceTree&Git部分名詞解釋

克隆(clone):從遠(yuǎn)程倉庫URL加載創(chuàng)建一個(gè)與遠(yuǎn)程倉庫一樣的本地倉庫
提交(commit):將暫存文件上傳到本地倉庫(我們在Finder中對本地倉庫做修改后一般都得先提交一次窍蓝,再推送)
檢出(checkout):切換不同分支
添加(add):添加文件到緩存區(qū)
移除(remove):移除文件至緩存區(qū)
暫存(git stash):保存工作現(xiàn)場
重置(reset):回到最近添加(add)/提交(commit)狀態(tài)
合并(merge):將多個(gè)同名文件合并為一個(gè)文件腋颠,該文件包含多個(gè)同名文件的所有內(nèi)容,相同內(nèi)容抵消
抓取(fetch):從遠(yuǎn)程倉庫獲取信息并同步至本地倉庫
拉取(pull):從遠(yuǎn)程倉庫獲取信息并同步至本地倉庫它抱,并且自動執(zhí)行合并(merge)操作秕豫,即 pull=fetch+merge
推送(push):將本地倉庫同步至遠(yuǎn)程倉庫,一般推送(push)前先拉裙坌睢(pull)一次混移,確保一致
分支(branch):創(chuàng)建/修改/刪除分枝
標(biāo)簽(tag):給項(xiàng)目增添標(biāo)簽
工作流(Git Flow):團(tuán)隊(duì)工作時(shí),每個(gè)人創(chuàng)建屬于自己的分枝(branch)侮穿,確定無誤后提交到master分枝
終端(terminal):可以輸入git命令行

注意

盡量不要使用pull,我的理解是pull是一種強(qiáng)制將遠(yuǎn)端拉取下來,所以盡量使用fetch吧,這樣才能更好的合代碼

還未碰到的問題,可以遇到后詳細(xì)說明

1.Sourcetree無法推送,ssh問題
2.超前一個(gè)版本落后n個(gè)版本
*3.上班第一件事:merge
4.sourcetree配置多個(gè)ssh來上傳項(xiàng)目

參考文獻(xiàn):(*快捷入門)
1.http://www.reibang.com/p/ea9ebad692d2
2.https://blog.csdn.net/benchow168168/article/details/82996525
3.https://blog.csdn.net/yunxuantu/article/details/84562617
4.https://blog.csdn.net/zyx_ly/article/details/87832170
5.https://blog.csdn.net/collonn/article/details/52710049
*6.https://jingyan.baidu.com/album/59703552beda4f8fc1074063.html?picindex=3
-7.https://blog.csdn.net/collonn/article/details/52710049
8.https://blog.csdn.net/benchow168168/article/details/82996525
9.https://blog.csdn.net/chang_ge/article/details/80796266
*10.https://my.oschina.net/daxiaLKS/blog/743254

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末歌径,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子亲茅,更是在濱河造成了極大的恐慌回铛,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件克锣,死亡現(xiàn)場離奇詭異茵肃,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)袭祟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進(jìn)店門验残,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人巾乳,你說我怎么就攤上這事您没。” “怎么了胆绊?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵氨鹏,是天一觀的道長。 經(jīng)常有香客問我压状,道長仆抵,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任,我火速辦了婚禮肢础,結(jié)果婚禮上还栓,老公的妹妹穿的比我還像新娘。我一直安慰自己传轰,他們只是感情好剩盒,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著慨蛙,像睡著了一般辽聊。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上期贫,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天跟匆,我揣著相機(jī)與錄音,去河邊找鬼通砍。 笑死玛臂,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的封孙。 我是一名探鬼主播迹冤,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼虎忌!你這毒婦竟也來了泡徙?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤膜蠢,失蹤者是張志新(化名)和其女友劉穎堪藐,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體挑围,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡礁竞,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了杉辙。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片模捂。...
    茶點(diǎn)故事閱讀 38,814評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖奏瞬,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情泉孩,我是刑警寧澤硼端,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布,位于F島的核電站寓搬,受9級特大地震影響珍昨,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一镣典、第九天 我趴在偏房一處隱蔽的房頂上張望兔毙。 院中可真熱鬧,春花似錦兄春、人聲如沸澎剥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽哑姚。三九已至,卻和暖如春芜茵,著一層夾襖步出監(jiān)牢的瞬間叙量,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工九串, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留绞佩,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓猪钮,卻偏偏與公主長得像品山,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子躬贡,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,728評論 2 351