初始化用戶信息html
* git config --global user.name XXX 用戶名git
* git config --global user.email XXX 用戶郵箱服務器
* git config –list #查看用戶信息ssh
* 這些信息會在你每一次的提交中附加fetch
clonespa
* git clone ssh://git@192.168.3.4/usr/local/git/項目名稱htm
* git:// http:// https:// 協議須要服務器支持blog
initrem
* git init同步
用"git init"初始化的版本庫用戶也能夠在該目錄下執行全部git方面的操做。但別的用戶在將更新push上來的時候容易出現衝突
* git --bare init
只會生成一類文件:用於記錄版本庫歷史記錄的.git目錄下面的文件;而不會包含實際項目源文件的拷貝,也就是說沒有工做樹
初始化代碼倉庫的時候最好使用 git --bare init
團隊工做基本流程
* git add 改動的文件
* git commit #(提交至本地)
* git pull #(將服務器項目與本地項目合併)
* git push #(將本地項目上傳至服務器)(在提交前要git pull --rebase一下,確保當前的本地的代碼爲最新。)
add
* 向git庫中添加或刪除文件
* git add XX #加單個文件
* git add . #加全部
* git add [path]會把對應目錄或文件,添加到stage狀態
* git add . 會把當前全部的untrack files和changed but not updated添加到stage狀態,
* 想移除某一個文件的暫存時用unstage
Commit
* git commit –m 「XXXX」 #直接添加簡單提交信息,添加註釋
* git status #查看當前代碼庫的狀態
* git log #查看版本信息
* git log –p #查看版本信息並顯示每次修改的diff
* git show 6bcfaed…. #查看指定版本信息
* #(show後面爲每次提交系統自動生成的一串哈希值)
* git show 6bcfaed #通常只使用版本號的前幾個字符便可
pull
* git pull mexdia master
* 意思是將叫mexdia的遠程庫拉下來,而且與本地master分支合併
* 這樣本地的代碼就和服務器同步爲最新的了
* git pull = git fetch + git merge
* git pull origin master =>
* git fetch origin master:tmp
* git diff tmp
* git merge tmp
push
* git push mexdia master
將本地最新代碼更新到服務器上
Remote
* git remote add mexdia ssh://git@192.168.3.4/usr/local/git/項目名稱
* git remote show
* git remove <remote >
* git rename <remote> <newname>
branch
git分支操做在本地創建分支,而後與本地主分支合併,最終提交到服務器。有效的避免了因我的操做不當向服務器提交過多髒數據,避免頻繁git clone服務器來更新本地庫。
* 分支操做指令:
* 1, 創建分支
* git branch AAA #創建分支AAA
* 2,分支切換
* git checkout AAA #從當前分支切換到AAA分支
* 3, 將分支與主枝master合併
* git checkout master #(首先切換回主枝)
* git merge AAA #(將分支AAA與主枝合併)
* 4, 當前分支查看
* git branch #默認有master(也稱爲主枝)
* git branch –a 查看當前全部分支
* 5, 刪除分支
* git branch –d AAA #刪除分支AAA
reset
* git reset --hard +版本號(哈希碼前幾位就ok)
* git reset HEAD^ 回滾一個版本
* git reset HEAD^^ 回滾兩個版本,依此類推
參考資料
* Git分支管理策略- 阮一峯
* http://www.ruanyifeng.com/blog/2012/07/git.html
* Git遠程操做詳解,有圖解,比較直觀
* http://www.ruanyifeng.com/blog/2014/06/git_remote.html