Git學習筆記
文章目錄
- Git學習筆記
- 一,Git 與 SVN
- 二,Git指令
-
- 2.1 入門
- 2.2 分支與合并
- 三,Git送出代碼
Git 是一個開源的分布式版本控制系統,用于靈活高效地處理任何或小或大的項目。
Git 是 Linus Torvalds 為了幫助管理 Linux 核心開發而開發的一個開放源碼的版本控制軟體。
Git 與常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本庫的方式,不必伺服器端軟體支援。
一,Git 與 SVN
Git 不僅僅是個版本控制系統,它也是個内容管理系統(CMS),工作管理系統等。
如果你是一個具有使用 SVN 背景的人,你需要做一定的思想轉換,來适應 Git 提供的一些概念和特征。
Git 與 SVN 差別點:
1、Git 是分布式的,SVN 不是。這是 Git 和其它非分布式的版本控制系統,例如 SVN,CVS 等,最核心的差別。
2、Git 把内容按中繼資料方式存儲,而 SVN 是按檔案:**所有的資源控制系統都是把檔案的元資訊隐藏在一個類似 .svn、.cvs 等的檔案夾裡。
3、Git 分支和 SVN 的分支不同:**分支在 SVN 中一點都不特别,其實它就是版本庫中的另外一個目錄。
4、Git 沒有一個全局的版本号,而 SVN 有:**目前為止這是跟 SVN 相比 Git 缺少的最大的一個特征。
5、Git 的内容完整性要優于 SVN:**Git 的内容存儲使用的是 SHA-1 雜湊演算法。這能確定代碼内容的完整性,確定在遇到磁盤故障和網絡問題時降低對版本庫的破壞。
二,Git指令
2.1 入門
初始化目前目錄為git倉庫
git init
或
git init 倉庫名
從伺服器上克隆倉庫
git clone gitHub倉庫位址
從伺服器上取回更新
git pull
或
git pull gitHub倉庫位址
添加新檔案
git add 檔案名
送出版本
git commit
或
git commit -m "送出描述資訊"
将修改推送到伺服器
git push gitHub倉庫位址 [分支]
2.2 分支與合并
列出所有分支
git branch
建立分支
git branch 分支名
切換分支
git checkout 分支名
建立并切換分支:
git checkout -b 分支名
第一個分支,或主分支,被稱為"master"。
更新新分支【分支名】上的東西到主分支上
git rebase [分支名]
更新主分支的東西到【分支名】上
git rebase master
合并分支
git checkout master
删除分支
git branch -d [分支名]
或者
git branch -D [分支名] #強制删除
三,Git送出代碼
使用Git前,需要先建立一個倉庫(repository)。你可以使用一個已經存在的目錄作為Git倉庫或建立一個空目錄。
使用目前目錄作為Git倉庫,我們隻需使它初始化。
git init
或者
git init 倉庫名稱
将 GitHub(遠端/遠端)的相應倉庫拷貝到本地計算機中。
git clone gitHub倉庫位址
指令執行完成後就将遠端的Repository拷貝到本地計算機中了。
當我們将檔案添加到倉庫目錄下時,要執行add指令才能把檔案加到Git倉庫中。
git add 檔案名稱
或者
git add -all #添加所有檔案
或者
git add . #送出所有檔案
添加檔案後,此時還沒有被儲存進Git倉庫中,還需要進行commit才能送出進倉庫。
git commit -m "描述資訊"
送出到倉庫後在繼續同步到GitHub上面。
git push gitHub倉庫位址
或
git push gitHub倉庫位址 分支 #預設分支為master
以上就是一次完整的送出代碼過程。