Git 相關

Git和SVN區(qū)別

Git是分布式的喂击,SVN是集成式的

這個是Git和SVN最大的區(qū)別庵楷。
SVN:


872610-20180608145946789-1176396152.png

·SVN的版本管理有一個唯一的URL翎承,每一個用戶都是從這個地址獲取代碼和數(shù)據(jù)蛉鹿,
·同樣提交的的話也是對這個唯一的版本庫進行更改
·沒有網(wǎng)絡的話取劫,就沒有辦法進行提交文件,無法還原忌卤,查看歷史記錄差異
·提交需要授權扫夜,方便進行權限管理
Git:


872610-20180608150004492-762162766.png

·每個clone版本庫都是平等的〕刍玻可以從任何一個版本庫來克隆屬于自己的版本庫笤闯,同時自己的庫也可以當作源來提供給他人。
·可以脫離網(wǎng)絡時正常使用版本庫棍厂,只需要有網(wǎng)時推送PUSH一下颗味,和服務器保持同步
·Git創(chuàng)建功能分支方便

在我剛進公司時我們項目使用的是SVN進行版本管理,后期進行替換到了Git牺弹。從我的角度來看引入git最主要的優(yōu)勢就是更加方便的進行功能分支管理浦马,和斷網(wǎng)不影響正常的功能使用。在我們的后期開發(fā)中需要進行大量的創(chuàng)建feature功能分支张漂,切換分支的操作晶默,因為Git分支是指針指向某次提交,而SVN分支是拷貝目錄磺陡,所以git創(chuàng)建和切換的成本很低漠畜。

Git 的常用操作

日常使用圆丹,我通常是可視化界面和命令行方式結合使用
可視化操作通過Sourcetree來操作


image.png

其實日常的一些提交 commit,推送 push廉丽,拉取 pull 通過sourcetree都可以進行很方便的操作正压,但是一些操作還是命令行更方便焦履,如:squash merge,rebase 郑临,cheery-pick 等等

目前我們項目定的規(guī)范是厢洞,在日常拉取時使用rebase來代替合并典奉,在進行不同分支間的合并時也盡量使用squash卫玖;
主要目的時為了跟清晰的版本線管理,因為假瞬,直接使用合并的話可能會導致創(chuàng)建一些自動提交笨触,讓版本線變得復雜,不容易回溯問題芦劣。


image.png

這個是我們期望的結果虚吟,一條線拉下來


image.png

這個是不希望的偏塞,會拉出很多其他分支灸叼,不方便查看

一般來說,一個功能分支在進行一段時間的開發(fā)之后古今,我們會同步一下dev主干上的內(nèi)容捉腥,防止版本差異過大導致后期合并時沖突過多抵碟。我們會先從dev拉取一個最新的分支命名為對應的功能分支名如:feature_1.x,再把對應的分支功能合并到這個分支上,通過升級的方式來進行分支同步呈队。

關于merge和rebase的區(qū)別具體的可以看看這個:
https://blog.csdn.net/hudashi/article/details/7664631
這里我只簡單的貼兩張圖

image.png

merge 會產(chǎn)生一個 merge commit ,在分支線的表現(xiàn)看起來就是“分叉了”
image.png

而使用 rebase 就可以避免這個問題

git --help                       //列出常用的git命令
git branch                     //輸出本地分支
git brach 分支名           //創(chuàng)建新的分支

git checkout 分支名                   //切換分支
git checkout -b mybranch         //創(chuàng)建并切換分支

git merge --squash 分支名        //把分支上的提交合并成一次提交唱歧,變動存到本地分支,所以還需要手動提 
                                                    交一次颅崩;之前的提交日志記錄沒了,會被這個新的提交覆蓋掉
git cherry-pick <HashA> <HashB>     //將A和B提交應用到當前分支
git cherry-pick A..B                             //左開右閉
git cherry-pick A^..B                           //包括A
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末沿后,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子尖滚,更是在濱河造成了極大的恐慌喉刘,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件漆弄,死亡現(xiàn)場離奇詭異,居然都是意外死亡撼唾,警方通過查閱死者的電腦和手機倒谷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進店門渤愁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來抖格,“玉大人诺苹,你說我怎么就攤上這事“旖埃” “怎么了筹淫?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長呢撞。 經(jīng)常有香客問我损姜,道長,這世上最難降的妖魔是什么殊霞? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任摧阅,我火速辦了婚禮,結果婚禮上绷蹲,老公的妹妹穿的比我還像新娘棒卷。我一直安慰自己,他們只是感情好祝钢,可當我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布比规。 她就那樣靜靜地躺著,像睡著了一般拦英。 火紅的嫁衣襯著肌膚如雪蜒什。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天疤估,我揣著相機與錄音灾常,去河邊找鬼。 笑死铃拇,一個胖子當著我的面吹牛钞瀑,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播慷荔,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼仔戈,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了拧廊?” 一聲冷哼從身側響起监徘,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎吧碾,沒想到半個月后凰盔,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡倦春,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年户敬,在試婚紗的時候發(fā)現(xiàn)自己被綠了落剪。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡尿庐,死狀恐怖忠怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情抄瑟,我是刑警寧澤凡泣,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站皮假,受9級特大地震影響鞋拟,放射性物質發(fā)生泄漏。R本人自食惡果不足惜惹资,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一贺纲、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧褪测,春花似錦猴誊、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至萝毛,卻和暖如春项阴,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背笆包。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工环揽, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人庵佣。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓歉胶,卻偏偏與公主長得像,于是被迫代替她去往敵國和親巴粪。 傳聞我的和親對象是個殘疾皇子通今,可洞房花燭夜當晚...
    茶點故事閱讀 44,614評論 2 353

推薦閱讀更多精彩內(nèi)容

  • Git是我們最常用的代碼版本管理工具,它的功能強大肛根,靈活多變辫塌,最難的就是掌握它的命令了。 GIT & SVN Gi...
    老鼠AI大米_Java全棧閱讀 282評論 0 2
  • 一派哲、git 1臼氨、git是什么? (1)git是版本管理芭届、團隊合作開發(fā)工具(2)和svn的區(qū)別是:git是分布式管理...
    Grayly吖閱讀 586評論 0 0
  • https://backlog.com/git-tutorial/cn/intro/intro1_1.htmlht...
    zZ小菜鳥閱讀 741評論 0 0
  • 1.文檔地址 1.git簡易教程 2 .廖雪峰git教程 2.git是什么 1.版本管理储矩、團隊合作開發(fā)工...
    確實不錯閱讀 277評論 0 0
  • 文檔地址git簡易教程廖雪峰git教程 git是什么版本管理感耙、團隊合作開發(fā)工具和svn的區(qū)別是:它是分布式管理 代...
    落葉荼閱讀 208評論 0 0