分佈式版本控制系統
如果你是一個開發人員,想用上這個世界上目前最先進的分佈式版本控制系統,那麼,趕快開始學習吧!
1 Git
Git是目前世界上最先進的分佈式版本控制系統(沒有之一)。
github:全球最大的同性交友網站。
2. 創建ssh公鑰
$ ssh-keygen -t rsa -C "user-E-mail";
使用這條命令判斷是否連接到github
$ ssh -T git@github.com
3. 配置個人信息
$ git config --global user.name "userName";
$ git config --global user.email "userEmail";
可以使用
$ git config --global user.name
$ git config --global user.email
這兩條命令來查看剛纔設置的個人信息
$ git config --list
4. 創建
4.1 clone
$ git clone git@orgin master address
orgin master address
是倉庫的地址
4.2 添加,提交
添加文件
//提交文件到暫存區
$ git add fileName(文件名)
$ git add .(將文件中所有內容添加到暫存區)
//提交文件到本地版本庫
$ git commit -m "這個提交信息"
從工作區直接添加到版本庫
$git commit -a -m "提交信息"
提交改動到服務器版本庫
$ git push (可以增加要提交的地址,比如orgin master)
4.3 查看狀態,對比
查看工作區(紅色標識)和暫存區(綠色標識)的狀態
$ git status
查看版本庫信息
$ git log
bash進入一個文件,如果要退出,使用q
是不保存退出,使用wq
是保存退出,使用ctrl+z
是強制退出(不建議使用,如果使用這個退出文本類文件會生成幾個錯誤文件)
查看工作區與暫存區的改動
$ git diff
可以查看目前工作區和暫存區的差異,新增內容使用綠色文字標識,刪減內容使用紅色標識
查看暫存區與版本區的區別
$ git diff --cached
查看工作區與版本區的區別
$ git diff master
4.4 文件退回
從暫存區退回到工作區
$ git reset HEAD fileName(文件名)
從版本區或暫存區退回到工作區
$ git checkout -- fileName(文件名)
當某個文件已經提交之後,發現同一組的文件有沒有提交的,可以執行以下命令
$ git add fileName
$ git commit -m "提交信息" --amend
這樣可以把版本庫中的最後一個版本退回早暫存區,然後和暫存區的內容合併爲一個新版本,在提交到版本庫
4.5 刪除
當某個文件提交到暫存區了,而本地的這個文件被手動刪除了(暫存區並沒有刪除),既要刪除工作區文件,又要刪除暫存區文件
$ git rm fileName(文件名)
刪除工作區和暫存區的文件
$ git rm -f fileName(文件名)
刪除暫存區的文件(不刪除工作區的文件)
$ git rm --cached fileName(文件名)
4.6 版本退回
使用log信息進行退回整個版本
$ git reset --hard logMessage(git log 獲取到的版本編碼)
通過log信息進行單個文件的還原
git checkout logMessage(git log 獲取到的版本編碼) flieName(要恢復的文件名)
退回到上一個版本
//退回一個版本
$ git reset --hard HEAD^
//回退上2個版本
$ git reset --hard HEAD^^
//回退到從當前版本起到前面的第N個版本
$ git reset --hard HEAD~N
快速查看版本信息
$ git reflog
5 同步到遠程倉庫
查看遠程倉庫的名字
$ git remote
查看遠程倉庫的地址
$ git remote -v
創建遠程倉庫的名字
$ git remote add Name
推送到遠程倉庫的master分支
$ git push origin master