Git作為目前世界上最牛逼的分布式版本管理系統(tǒng),如何操作Git是每個程序員必須掌握的一項技能.
在Windows上使用Git,可以從Git官網直接下載安裝 Git
安裝完成后,在開始菜單里找到“Git”->“Git Bash”,彈出一個類似命令行窗口的東西,就說明Git安裝成功。
安裝后(本地配置)
在git bash進行用戶名以及郵箱地址配置
$ git config --global user.name"Your Name"
$ git config --global user.email"email@example.com"
創(chuàng)建版本庫
第一步:
創(chuàng)建一個空文件夾,并在文件夾里輸入
$ git init
以創(chuàng)建git管理倉庫
創(chuàng)建后會出現(xiàn)一個.git文件,
不要去修改以及刪除,
它是關于你Git版本庫的配置
第二步:
嘗試提交
$ touch Readme.txt? ? ?//告訴git把文件添加到倉庫 (這里可以反復使用,反復添加)
$git commit -m " first commit(名稱任意倉庫名) "? ? //這里告訴git把文件提交到倉庫中
git commit命令執(zhí)行成功后會告訴你,
1 file changed:1個文件被改動(我們新添加的Readme.txt文件)
如果此時修改Readme.txt中的內容并保存
運行 $ git status? ? ?//會彈出修改的信息,?
git status命令可以讓我們時刻掌握倉庫當前的狀態(tài),
上面的命令輸出告訴我們,
readme.txt被修改過了,
但還沒有準備提交的修改。
再運行 $ git diff readme.txt? ? //這個命令可以清楚Readme.txt修改了什么
清楚了具體的文件修改后,
再次運行commit命令,
進行提交
$ git commit "first commit"
提交后,
我們再用git status命令看看倉庫的當前狀態(tài):
$ git status
On branch master nothing to commit, working tree clean
Git告訴我們當前沒有需要提交的修改,
而且,工作目錄是干凈(working tree clean)的。
碼云 遠程倉庫的使用
首先,
創(chuàng)建一個Git倉庫并配置SSH KEY,
具體方式 碼云官方文檔
然后,進行遠程倉庫的連接

$ git remote add origin git@github.com:michaelliao/learngit.git? ? ? //配置遠程倉庫名為origin
后面的git串代表你的git倉庫,
可在上圖克隆的SSH中復制出來
下一步,就可以把本地庫的所有內容推送到遠程庫上:
$ git push -u origin master
提示: 若提交失敗說明可能是倉庫對應不上等原因
可以使用$ git push -u origin master -f命令強行提交,
但會把之前所存儲的數(shù)據替換,謹慎使用
把本地庫的內容推送到遠程,
用git push命令,
實際上是把當前分支master推送到遠程。
由于遠程庫是空的,
我們第一次推送master分支時,加上了-u參數(shù),
Git不但會把本地的master分支內容推送的遠程新的master分支,
還會把本地的master分支和遠程的master分支關聯(lián)起來,在以后的推送或者拉取時就可以簡化命令。
現(xiàn)在,遠程庫已經準備好了,
下一步是用命令git clone克隆一個本地庫:
$ git clone git@github.com:michaelliao/gitskills.git
//這個命令將會把數(shù)據導出到本地里,
就能實現(xiàn)本地遠程倉庫同步了
關于git分支的使用和合并
首先,我們創(chuàng)建master-2分支,然后在git bash輸入
$git pull
將分支導入本地。
再切換到master-2分支
$ git checkout?master-2
然后,用git branch命令查看當前分支:
$ git branch
git branch命令會列出所有分支,當前分支前面會標一個*號。
然后,我們就可以在master-2分支上正常提交,
比如對readme.txt做個修改,加上一行:
Creating a new branch is quick.
然后提交:
$ git add readme.txt
$ git commit -m"branch test"
[master-2b17d20e] branch test 1 file changed,1 insertion(+)
現(xiàn)在,master-2分支的工作完成,我們就可以切換回master分支:
$ git checkout master
然后進行上一段分支的合并:
$git merge origin/master-2
合并完成后,就可以刪除master-2分支了:
$ git branch -d master-2
在本地進行Git分支的創(chuàng)建以及提交
git checkout -b v1.0 origin/master//創(chuàng)建分支v1.0并切換
git push origin HEAD -u//提交到線上倉庫