mkdir git ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?創(chuàng)建文件git
cd git ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?變更目錄至git
git init ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 將目錄編程git可管理倉(cāng)庫(kù)
git add ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?將文件添加到倉(cāng)庫(kù)
git commit ?-m "注釋" ? ? ? ? ? ? ? ? ? ? ? ? ?文件提交到master上
git status ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 查看代碼狀態(tài)
git diff ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 查看修改的內(nèi)容
git log ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?參看修改的日志
git log --pretty=oneline ? ? ? ? ? ? ? ? ? ? ? 更簡(jiǎn)潔的查看修改日志
git reset --hard HEAD^ ? ? ? ? ? ? ? ? ? ? ? ?版本回退(回退到上一個(gè)版本)
git reset --hard HEAD^^ ? ? ? ? ? ? ? ? ? ? ? 版本回退(回退到上上一個(gè)版本)
git reset --hard HEAD command_id ? ? ? 根據(jù)提交ID的7位數(shù)回退到特定的版本
git reflog ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 查看操作的每一天命令

git chekout -- file ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 丟棄工作區(qū)的修改
git reset HEAD file ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 丟棄暫存區(qū)中的修改
rm file ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 刪除工作區(qū)的文件
git rm file ?+ ?git commit -m"注釋" ? ? ? ?刪除版本庫(kù)中的文件
git chekout -- file ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 工作區(qū)刪錯(cuò)時(shí) ? 丟棄工作區(qū)的修改?
ssh-keygen -t rsa -C "example@163.com" ? ? ?創(chuàng)建SSH秘鑰
添加id_rsa.pub到github
遠(yuǎn)程創(chuàng)建一個(gè)與本地一樣名字的庫(kù)然后:
git remote add origin git github
.com:flyingalex/personal-blog.git ? ? ?
關(guān)聯(lián)到遠(yuǎn)程
git push -u origin master ? ? ? ? ?
推送至遠(yuǎn)程庫(kù)(首次此后的推送git push origin master)
git clone git github
.com:flyingalex/personal-blog.git? ?
?遠(yuǎn)程克隆
git checkout -b dev ? ? ? ? ? ?
創(chuàng)建分支dev并切換至分支(git branch dev + git chekout dev)
git branch ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?查看分支
git checkout master ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 切換至master分支
git merge dev ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?合并分支dev到master分支上時(shí)
git branch -d dev ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?合并后刪除分支dev
git log --graph ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?查看分支合圖
git merge --no-off -m "merge with no-ff" dev ? 不使用fast foeward方式合并dev
git stash ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?儲(chǔ)存工作現(xiàn)場(chǎng)
git stash list ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 查看工作現(xiàn)場(chǎng)
git stash pop ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 恢復(fù)工作現(xiàn)場(chǎng)并刪除stash 內(nèi)容
git branch -d feature-vulcan ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?丟棄分支
git branch -D feature-vulcan ? ? ? ? ? ? ? ? ? ? ? ? ? ? 強(qiáng)行丟棄一個(gè)沒(méi)有合并分支
git remote ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?查看遠(yuǎn)程庫(kù)的信息
git remote -v ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?查看遠(yuǎn)程庫(kù)詳細(xì)信息
git push origin master ? ? ?
推送本地的分支master到遠(yuǎn)程庫(kù)可能只能克隆主分支master,需要通過(guò)
git checkout -b dev origin/dev
創(chuàng)建本地的dev鏈接到遠(yuǎn)程然后使用
git push origin dev推送;
推送有沖突時(shí)用git pull抓取最新的提交(這里需要用
git branch --set-upstream branch-name origin/branch-name
與遠(yuǎn)程庫(kù)建立分支鏈接),在本地合并解決沖突再推送
git tag v1.0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 創(chuàng)建標(biāo)簽
git tag ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 查看所有標(biāo)簽
git tag v0.9 command_id ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 對(duì)特定的版本創(chuàng)建標(biāo)簽
git show v0.9 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?查看標(biāo)簽信息
git tag -a v0.1 -m "注釋" ?command_id ? ? ? ? ? ? ? ? ? ?帶有注釋的標(biāo)簽
git tag -d v0.1 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 刪除標(biāo)簽
git push origin ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?推送標(biāo)簽到遠(yuǎn)程
git push origin --tags ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 一次性推送全部沒(méi)有推送到遠(yuǎn)程的標(biāo)簽
git tag -d v0.9? + git push origin :refs/tags/v0.9? ? 刪除遠(yuǎn)程的標(biāo)簽
git add -u 清理刪除文件
遠(yuǎn)程commit回復(fù):
git reset --hard head~1 ?
git push -f origin master
vim退出: ":q"
小團(tuán)隊(duì)工作的方法:
每個(gè)人均在自己的本地創(chuàng)建一個(gè)分支工作,合并時(shí)切換回master,再合并別人提交的代碼和自己開發(fā)寫的分支內(nèi)容。