黄片毛片在线看_天天操天天射天天爽_精品久久久久中文慕人妻 _青娱乐在线免费视频_青青草精品在线视频_日本中文字幕久久_亚洲国产欧美另类_伊人手机在线视频_天天综合永久入口_久久久综合久久

福州網站建設>網站新聞>php技術

GIT 基礎知識

發布日期:2019-10-13瀏覽次數:1562 來源:福州網站建設

Git如日中天的今天,不懂git都不好意思跟人說自己是程序猿。你是不是早就躍躍欲試了,只是苦于沒有借口(契機)。 好吧,機會就在今天。 給我20分鐘,是的,只要20分鐘, 讓你快速用上git。

我們廢話不多說,直接來干貨。

我們將會介紹以下幾點:

一, 什么是git

二,使用git的一般開發流程

三,快速安裝新建項目。holloworld。

開始:

一,什么是git。

閱讀本文的前提是你知道或者用過至少一種源代碼管理工具,比如:SVN, CVS 或者TFS等等。 你必須知道什么是源代碼管理。如果這些都不滿足。請直接跳過本文。

了解陌生事物的最好辦法,是和已知事物類比。 ---孔子

我們以svn為例。  我們都知道傳統的源代碼管理都是以服務器為中心的:

每個開發者都直接連在中間服務器上, 本地修改,然后commit到svn服務器上。

這種做法看似完美,但是有致命的缺陷:

1. 開發者不能本地跟蹤代碼版本。 所有的信息都是在服務器上。  你把本地的代碼改了很多,但是又不能提交。通常,本地只能緩存一個版本。對于小項目無所謂, 但是項目一復雜,人員多就麻煩了。 通常你本地的代碼都全是紅色的。自己都不知道今天修改了什么, 有哪些修改是真正應該提交給svn的。

2. 因為第一點,一旦離開服務器, 程序猿將無法正常工作。 因為本地不能跟蹤代碼版本。  你的(幾乎)任何操作都必須連上服務器。比如, show log, blame,show history等等。

3. 中央服務器壓力過大。  因為每個人都必須把代碼提交到服務器,并且做daily build。

4. 對于大型項目, svn幾乎不可用。 例如linux內核項目, 開發者何止幾萬? 都直接提交給svn服務器的話還不亂套了。

5. 對于個人的私人項目而言(或者對于小公司的項目), 不用版本控制當然不行,但是為了用版本控制而專門架設svn服務器有有點舍不得。

有沒有能解決上述幾個問題的東東呢?  恩, 答案是肯定的。

Linux內核的作者也遇到了這些問題,于是他決定再一次改變世界, 重寫一個可以本地使用的svn。

對, 這就是git。  分布式代碼版本管理系統。(說人話 :就是不用服務器的svn)

我們來看git的結構:

git沒有中央服務器。 你裝上git軟件之后,你就可以指定本地的文件夾進行版本控制了。你可拔掉網線,然后在本地修改, commit,revert(rollback), branch, restore, show log, blame, history 等等, 全部你之前在svn里面可以用的操作。 簡單的說,你就完美了。

 

你可能意識到一個問題了。   就是天下大亂了。

每個人都自顧自的開發,怎么協作呢?  恩,通常git比svn會多出兩個操作, 就是 pull 和push。

我們看一個復雜一點的圖:

開發者之間通過 pull和push操作, 把別人的修改拉過來,或者把自己的修改推給別人。

恩,你可能還是覺得有問題,我們生產 環境中, 以誰的代碼為最終版本呢? 

這個問題確實比較棘手,因為,從單純的技術上講,每個開發者的機器都是對等的。 沒有主次之分。

我們還有辦法:

技術上不能解決的問題,我們從制度上解決. ---- 孟子

從分布式環境中我們模擬出一個中心來:

我們引入Leader這個角色。  他的機器是最終版本。 每個開發者都必須把最終的修改版push給leader。 leader會review然后提交。他就是最終版本。

恩, 我們好像還漏掉一個大問題, 說git,怎么漏掉了github呢。 github是什么。

我們知道,如果每個人都本地修改的話,本地可能不安全,(硬盤壞了,筆記本被偷了。。。。)

我們可能需要一個安全的服務器來存儲/備份代碼。對于開源的項目,可能是需要一個地方分享你的代碼,你不可能24小時開著筆記本,讓別人從你這pull代碼。

于是, 網上所謂的源代碼托管網站就冒出來了。 github就是這樣的。

看這個圖, 我只修改了其中一個地方, 就是把leader的機器換成了。 github.com 提供的在線賬戶。

所以, git和 github沒有必然聯系。

這里有幾個常用的在線托管地址, 有興趣自己看看:

1. github.com,  大名鼎鼎。 免費,只支持開源項目, 不支持私有項目。

2.  bitbucket.com ,同樣大名鼎鼎。 免費, 支持開源項目和私有項目。 免費用戶最多5個。項目無限。

3.   git.oschina.net, 國內頂尖托管平臺, 我本人正在用的就是這個。  支持開源項目和私有項目。 成員無限, 項目1000個。   使用的是阿里云服務器, 速度極快。  本人推薦5顆星。

 

二, git開發的一般流程。

上面其實已經涉及了使用git的一般結構。 那么生產環境中, git是如何應用的呢。

本人知道的模型如下:

 

每個開發者都向自己的項目服務器(leader)提交代碼, leader向公司服務器提交。 當然這個leader是可有可無的。如果項目小的話,  開發者可以直接向公司服務器提交。  公司的服務器就是最終版本。  一般公司還會有持續集成CI服務器。  我們可以在公司的源碼服務器上設置git的hook。 自動觸發CI服務器工作。 這是后話,不多說了。

 

三,  前面的概念弄清楚之后, 上手就容易多了。 我們helloworld。

1.   這是git的官網:http://git-scm.com/  去下載windows客戶端。

     如果是linux的話, sudo apt-get install gitcore

2.  注意, 官網的客戶端都是命令行的。 命令行是高階用法。不在這里說了。 我們下個gui。

我用的是TortoiseGit。  https://code.google.com/p/tortoisegit/  , 大家恐怕都熟悉svn時代的烏龜爬。上手快。 我們下面的操作都是gui上的。

安裝過程不說了。 一路next。 我們跳過。 直接到最后。假設你現在已經安裝完成了。

比如我已經有一個工程, helloworld:

這是工程文件的內部結構:

現在我們想讓helloworld用上git怎么做呢, 在工程根目錄下,點擊鼠標右鍵。

選擇 Create repository。

這個選項不要勾上。 稍后我們會解釋什么是 Bare。

然后就完成了。

里面多出了一個 .git目錄。 當前的目錄(及其所有子目錄)已經在git的監視之中了。 但是當前的代碼還沒有添加到git的跟蹤數據庫中。  簡單的說,git還沒有儲存任何版本信息。 我們需要進行第一次提交:

git默認你本地會有一個主分支master。

我們寫一些注釋, 并且勾上想要添加到git的文件。 (如果有子目錄的話, 它都會顯示在這里。)

提交完成, close。 這個push按鈕,稍后再說。

好了,這個時候我們在回到文件夾,看看有什么變化:

 

現在這些文件就添加進git了。

剩下的你就可以為所欲為了。 像svn一樣,自己試試幾個命令吧: 修改, difference, commit, revert,

到這你已經入門了。 

最后我們來介紹兩個重要的概念。

1. “git目錄”,   就是指上圖中,項目根目錄下生成的 “.git” 文件夾。  用過svn的同學都知道, svn有‘.svn’文件夾。  他們的作用差不多。 這里保存了git的本地數據庫資料。就是所有的版本信息。   跟svn不一樣的地方就是,git中,只有根目錄下有這個目錄, 所有的子目錄下都沒有, 也就是每個工程只有一個.git目錄。

2.  “git工作目錄”, 其實就是你的工程目錄, 比如上圖中的工程根目錄:H:\mycode\helloworld\  。  為什么有這個工作目錄呢。 就是你工作在這個目錄下, 你可以修改編輯里面的文件,最后把修改提交給git目錄。  這個共工作目錄還有一個神奇的地方就是,  你可以創建不同的branch(你默認工作在master下), 當你切換不同的branch時, 你的工作目錄(工程目錄)里的所有文件都會變成當前branch對應的文件。 這個不展開了。

 

最后再解釋上面留下的兩個問題:

1. “Bare”  創建Bare的意思是: 你只想要git的數據庫(即上圖中的 “.git”文件夾。), 而不想要當前的文件。 這通常用在公司的中央服務器上。 它不需要當前項目的實際代碼,只需要保留git數據庫信息就行了。

2. 在commit之后的對話框中的 push的意思。   正如之前介紹的。 push的意識是把你的修改push給別人(或者給公共服務器)。  commit的意思只是提交到本地的 .git 數據庫。 并沒有更新給別人。  所以提交完之后, 烏龜很貼心的給我們一個push按鈕。 通過它你可以快速把剛剛的修改push給別人,或者給服務器。 

 

總結, 這不是一本完全的git手冊,但至少能讓你消除git恐懼癥,快速入手。

 

這里是gitbook的中文版: http://gitbook.liuhui998.com/  他是真正的大而全。 為什么最后才說它呢? 因為它就像是一本 牛津大辭典, 全面,權威。  但是對于幼兒園小朋友學英語,就不能一上來就背它吧。  先跟著別人說,上手要緊。   之后有什么不會的,再去查字典。

 

以上是由福州網站建設的小編為你分享了"GIT 基礎知識"文章,如果你在這方面有什么問題,隨時聯系我們

php技術有關的文章
如果您有什么問題,歡迎咨詢我們客服! 點擊QQ咨詢
黄片毛片在线看_天天操天天射天天爽_精品久久久久中文慕人妻 _青娱乐在线免费视频_青青草精品在线视频_日本中文字幕久久_亚洲国产欧美另类_伊人手机在线视频_天天综合永久入口_久久久综合久久
av在线这里只有精品| 欧美人伦禁忌dvd放荡欲情| 一区二区三区视频在线观看| 国产三级久久久| 欧美成人一区二区三区| 欧美一级黄色大片| 日韩一二在线观看| 日韩欧美国产麻豆| 精品国产不卡一区二区三区| 日韩午夜av一区| 欧美成人欧美edvon| 精品成人a区在线观看| 精品久久久久久最新网址| 日韩一区二区免费电影| 欧美不卡一区二区| 国产日韩精品一区| 亚洲免费伊人电影| 五月婷婷综合网| 极品少妇xxxx精品少妇偷拍| 国产高清一区日本| 91丝袜高跟美女视频| 91视频免费播放| 欧美日本在线播放| 精品女同一区二区| 亚洲视频一二三| 亚洲电影一级黄| 国产精品影音先锋| 91久久香蕉国产日韩欧美9色| 欧美三级电影在线看| 精品成人在线观看| 亚洲综合一二三区| 精品一区二区在线播放| 99国产精品国产精品毛片| 在线观看国产日韩| 中国色在线观看另类| 天天色综合天天| 99在线热播精品免费| 日韩一区二区三区电影在线观看 | 国产精品久久久久久妇女6080| 亚洲国产综合91精品麻豆| 岛国av在线一区| 欧美一区二区三区公司| 亚洲精品日韩综合观看成人91| 狠狠色狠狠色综合| 91麻豆精品国产91久久久久久久久| 国产精品久久久久三级| 国产精品88888| 26uuu欧美| 狠狠色综合播放一区二区| 91精品在线免费观看| 亚洲超丰满肉感bbw| 欧美影院午夜播放| 一区二区三区波多野结衣在线观看| 国产精品99精品久久免费| 久久免费视频一区| 国产一区不卡视频| 精品国一区二区三区| 美国毛片一区二区三区| 欧美高清精品3d| 三级精品在线观看| 777亚洲妇女| 日韩av一区二区三区| 日韩欧美亚洲国产精品字幕久久久 | 国产亚洲一本大道中文在线| 国产精品一区二区在线观看网站| 精品久久久久久久久久久久久久久 | 国产精品 欧美精品| 久久只精品国产| 粉嫩蜜臀av国产精品网站| 国产精品久久久久久久午夜片 | 中文字幕亚洲电影| 欧美天堂一区二区三区| 午夜精品久久久久久久久 | 91精品国产色综合久久久蜜香臀| 麻豆国产91在线播放| 国产亚洲午夜高清国产拍精品 | 一区二区三区中文免费| 91精品蜜臀在线一区尤物| 国产精品一卡二| 一二三区精品福利视频| 欧美一区二区免费视频| 国产精品一二三四| 亚洲一区二区三区四区在线免费观看 | 91在线观看污| 蜜桃视频一区二区三区在线观看 | 精品免费国产二区三区| 97久久超碰精品国产| 三级欧美在线一区| 国产精品乱码久久久久久| 91麻豆精品在线观看| 久久69国产一区二区蜜臀| 亚洲精品伦理在线| 国产日韩欧美精品在线| 欧美日韩不卡视频| 99re66热这里只有精品3直播 | 中文字幕欧美国产| 91精品国产一区二区三区香蕉| www.久久久久久久久| 狠狠色丁香久久婷婷综合_中| 亚洲婷婷综合色高清在线| 日韩一区二区三区观看| 欧美日韩国产精品成人| 色天天综合色天天久久| 大尺度一区二区| 麻豆91在线观看| 午夜久久久久久久久久一区二区| 136国产福利精品导航| 久久久久久久久久久电影| 欧美一区二区三区四区在线观看 | 国产午夜精品一区二区三区嫩草| 欧美日韩免费一区二区三区视频| 成人高清在线视频| 丁香天五香天堂综合| 精品一区二区av| 极品美女销魂一区二区三区| 性做久久久久久免费观看| 亚洲一二三区不卡| 亚洲国产精品一区二区久久恐怖片| 亚洲视频网在线直播| 自拍偷拍国产精品| 亚洲精品ww久久久久久p站| 一区二区三区日韩在线观看| 亚洲人成人一区二区在线观看| 久久综合色一综合色88| 久久久噜噜噜久久人人看 | jlzzjlzz国产精品久久| 成人深夜在线观看| 99久久99久久精品免费观看| 91麻豆免费看片| 制服视频三区第一页精品| 欧美一级视频精品观看| 久久色视频免费观看| 国产精品久久久久aaaa| 一区二区三区在线视频观看58| 亚洲综合激情另类小说区| 日本一道高清亚洲日美韩| 久久精品国产亚洲一区二区三区| 久久av资源网| 大胆欧美人体老妇| 欧美日韩一区二区三区免费看| 欧美成人一级视频| 亚洲人成在线观看一区二区| 天堂va蜜桃一区二区三区| 久草精品在线观看| 91麻豆精品在线观看| 欧美一区二区人人喊爽| 中文字幕欧美一| 日韩在线卡一卡二| proumb性欧美在线观看| 日韩欧美一二三区| 亚洲一线二线三线视频| 国产91丝袜在线观看| 678五月天丁香亚洲综合网| 国产欧美一区二区三区鸳鸯浴 | 天堂影院一区二区| 成人av网站大全| 日韩亚洲电影在线| 一卡二卡三卡日韩欧美| 国产福利一区二区三区视频| 欧美欧美欧美欧美| 亚洲日本一区二区三区| 久久国产福利国产秒拍| 欧美日韩国产综合一区二区三区| 日本一区二区动态图| 久久激情五月激情| 欧美丰满一区二区免费视频| 亚洲欧洲无码一区二区三区| 国产一区二区三区不卡在线观看| 欧美视频中文字幕| 中文字幕在线观看不卡| 国产东北露脸精品视频| 26uuu成人网一区二区三区| 日本成人中文字幕在线视频 | 欧美日本国产视频| 亚洲精选视频在线| av在线免费不卡| 日韩毛片精品高清免费| 成人av资源下载| 国产精品免费视频一区| 成人高清av在线| 国产精品久久精品日日| 成+人+亚洲+综合天堂| 国产精品久久久久影院亚瑟 | 国产精品天美传媒| 99久久精品国产网站| 中文字幕成人av| 91在线观看高清| 亚洲一区二区黄色| 欧美偷拍一区二区| 日本亚洲电影天堂| 久久久久综合网| 91首页免费视频| 五月婷婷另类国产| 精品久久人人做人人爽| 丰满少妇在线播放bd日韩电影| 国产精品国产自产拍高清av | 天堂一区二区在线免费观看| 日韩精品一区二| 99re热这里只有精品视频| 三级久久三级久久久|