對於Git的總結
阿新 • • 發佈:2018-08-08
media 創建分支 bcd 原始的 ssh key 其他 本地 介紹 實現 1.1:vcs
Git是一款代碼管理工具(Version Control System),傲視群雄,是目前世界上最先進的免費開源的分布式版本控制系統,沒有之一!
1.本地版本控制
通過保存並管理文件補丁的方式,來記錄對應文件修訂前後的內容變化。目前最為流行的一種本地版本控制系統是rcs,所以,根據每次修訂後的補丁,rcs可以通過不斷打補丁,計算出各個版本的文件內容。當然這樣做之後,對於本機被管理文件可以做到版本回滾或者回退,但是對於處在不同系統上的開發者要進行協同工作,就遇到了問題。於是也就有了“集中式版本控制工具”。
2. 集中式版本控制
集中式版本控制系統(Centralized Version Control Systems,簡稱 CVCS),版本庫是集中存放在中央服務器的,而幹活的時候,用的都是自己的電腦,所以要先從中央服務器取得最新的版本,然後開始幹活,幹完活了,再把自己的活推送給中央服務器
這麽做最顯而易見的缺點是中央服務器的單點故障。如果維修一小時,那麽在這一小時內,誰都無法提交更新,也就無法協同工作。如果中心數據庫所在的磁盤發生損壞,又沒有做恰當備份,毫無疑問你將丟失所有數據——包括項目的整個變更歷史,只剩下人們在各自機器上保留的單獨快照。
3. 分布式版本控制
客戶端並不是提取最新版本的文件快照,而是把原始的代碼倉庫完整地鏡像下來,分布式,當我們連接共享版本庫時,可以先將服務器上的項目,克隆到本地,相當於每一臺電腦上都有整個項目的文件備份,在沒有網時也可以開發,完成開發後,可以先提交到本地倉庫,當有網的時候,再提交到共享版本庫,這樣一來,如果我們的服務器或者我們自己的電腦出故障,我們也沒有任何擔心的。
diff的介紹
diff 命令比較文本文件。它能比較單個文件或者目錄內容。
Git和Github的關系
1. Git是一個分布式的版本控制系統;
2.GitHub是一個基於Git的項目托管平臺,它提供了web界面,我們可以在上面創建資源倉庫來存放你的項目;
3.在本地或服務器創建一個資源倉庫通過shell命令或圖形用戶界面可以和遠端的GitHub進行項目同步更新,實現對項目的管理。
查詢
刪除用戶和郵箱
會發現以上執行的刪除用戶和密碼的語句,在下方在次執行的時候用戶密碼刪除
二:與遠程倉庫關聯
2.1:在本地生成ssh key
運行命令 ssh-keygen -t rsa -C "[email protected]"
2:2:在github 的setting中選擇SSH Keys 添加key
2.3:在GitHub中創建一個遠程倉庫
2.4:復制遠程倉庫的地址
2.5:本地clone遠程倉庫
2.6:本地修改代碼之後提交到遠程倉庫
First是我們本地倉庫取的名字,可以自定義!
之後輸入自己的用戶名和密碼! 即可以上傳成功!
可以使用命令git remote rm first刪除關聯的遠程倉庫
使用git remote show first 來查看first遠程倉庫的具體分支
使用git remote –v 來查看與當前本地倉庫相關聯的遠程倉庫
2.7:在GitHub上查看差異文件
1.修改本地倉庫的文件並上傳
1. 上傳成功後,在GitHub上查詢差異
三:分支管理
3.1:分支的引入
Master 是主分支,主要作為程序的發布,可以理解為是項目的最終版本!
所以不能在master上進行開發,所以應該建立子分支進行開發!
團隊中多個人開發一下項目,一同事在開發一個新的功能,需要一周時間完成,他寫了其中的50%還沒有寫完,如果他提 交了這個版本,那麽團隊中的其它人就不能繼續開發了。但是等到他全部寫完再全部提交,又存在每天進度丟失的風險,這如何是好呢?
對於上面的這個問題,我們就可以用分支管理的辦法來解決,一同事開發新功能他可以創建一個屬於他自己的分支,其它同事暫時看不到,繼續在開發分支(一般都 有多個分支)上幹活,他在自己的分支上幹活,等他全部開發完成,再一次性的合並到主分支上,這樣我們既可知道他的開發進度,又不影響大家幹活!
其他的版本控制器也有分支的概念,只不過切換,刪除分支的時候非常慢,效率低下,而git切換或者刪除分支幾乎就是一瞬間的事!
一
查詢所有分支
創建分支
分支合並
條件一
條件二
合並
IDEA中打開github
2.設置github當中的鏈接
3.修改這個文件之中的內容
對於Git的總結