提交流程
//創(chuàng)建新文件夾
$ mkdir <文件夾名>
//進入文件夾
$ cd <文件夾名>
//然后執(zhí)行 git init 以創(chuàng)建新的 git 倉庫我纪。
$ git init
//檢出倉庫
$ git clone 文件路徑
//添加文件到暫存區(qū)
$ git add <filename> 或 git add .
//將暫存區(qū)的所有內(nèi)容提交更新到當(dāng)前分支,并注釋信息"代碼提交注釋"
$ git commit -m "代碼提交注釋"
//注釋可以通過單引號來換行
$git commit -m '
> 1.提交內(nèi)容
> 2.注釋文本
> '
//上面的兩步可以合在一起寫
$ git commit -am "代碼提交注釋"
$ git commit -a -m "代碼提交注釋"
//連接遠程github項目(關(guān)聯(lián)一個遠程庫)
$ git remote add origin git@github.com:ZyjEugene/Bears.git
//將本地項目更新到github項目上去(第一次推送master分支的所有內(nèi)容,使用 `-u` 參數(shù)儡羔,Git不但會把本地的master分支內(nèi)容推送的遠程新的master分支宣羊,還會把本地的master分支和遠程的master分支關(guān)聯(lián)起來。此后汰蜘,每次本地提交后仇冯,只要有必要,就可以使用命令$git push origin master推送最新修改
$ git push -u origin master
//推送最新修改
$ git push origin master
//查看遠程倉庫地址
$ git remote -v
// 強制回退遠程倉庫到當(dāng)前版本(在此操作前一定要保證本地版本`git reset --hard <版本號>`到了指定回退的目標版本)
$ git push -f
分支
//查看當(dāng)前分支
$ git branch
issue1
* master //前面有*的就是現(xiàn)在的分支族操。
//查看遠程分支
$ git branch -r
//查看所有分支(本地+遠程)
$ git branch -a
//創(chuàng)建分支
$ git branch <branchname>
//切換分支
$ git checkout <branchname>
//創(chuàng)建和切換分支快捷命令苛坚。此命令是上面的兩個命令的合體
$ git checkout -b <branchname>
//修改分支的名稱
$ git branch -m <oldbranch> <newbranch>
//切換回主分支
$ git checkout master
//刪掉指定的分支
$ git branch -d <branch name>
//強行刪除指定分支
$ git branch -D <branch name>
//查看分支之間的差異。在合并改動之前色难,你可以使用如下命令預(yù)覽差異
$ git diff <source_branch> <target_branch>
//合并指定分支到當(dāng)前分支泼舱。合并分支時,Git會默認用Fast forward模式枷莉,此模式下娇昙,刪除分支后,會丟掉分支信息笤妙;而且當(dāng)所有分支都有改動時冒掌,容易出錯,建議添加 --no-ff 參數(shù)蹲盘,禁用Fast forward模式
$ git merge <name>
//合并分支時股毫,加上--no-ff參數(shù)就可以用普通模式合并,合并后的歷史有分支召衔,能看出來曾經(jīng)做過合并铃诬,而fast forward合并就看不出來曾經(jīng)做過合并。合并時要創(chuàng)建一個新的commit,所以加上-m參數(shù)趣席,把commit描述寫進去兵志。
$ git merge --no-ff -m "merge with --no-ff" <name>
//除非你將分支推送到遠端倉庫,不然他人就看不到該分支
$ git push origin <branch>
日志
//查看倉庫狀態(tài)
$ git status
//查看HEAD的移動歷史
$ git reflog
//查看所有版本庫日志
$ git log
//log輸出信息壓縮命令
$ git log --pretty=oneline
//查看指定版本庫日志
$ git log <filename>
//查看分支合并圖
$ git log --graph
$ git log --graph --pretty=oneline --abbrev-commit
//查看log參數(shù)的更多信息
$ git log --help
版本回退
//回到當(dāng)前版本吩坝,放棄所有沒有提交的修改
$ git reset --hard HEAD
//回到上個版本
$ git reset --hard HEAD^
//回到上上個版本
$ git reset --hard HEAD^^
//回到往上的第6個版本
$ git reset --hard HEAD~6
//回到指定版本號的版本(3628164這段數(shù)字是commit id毒姨,也就是所謂的版本號,它是一大串字符串的前幾位钉寝,我們沒必要把一整串commit id都寫出來)
$ git reset --hard 3628164
標簽
//查看所有標簽
$ git tag
//切換到需要打標簽的分支上,使用下面命令就可以打一個新標簽(標簽是默認打在最新提交的commit上的)
$ git tag <name>
//打標簽到指定的commit上
$ git tag <name> <commit id>
//查看標簽信息
$ git show <tagname>
//創(chuàng)建帶有說明的標簽闸迷。-a:指定標簽名嵌纲,-m:指定說明文字
$ git tag -a <tagname> -m "tag description" <commit id>
//刪除本地標簽
$ git tag -d <tagname>
//推送指定標簽到遠程
$ git push origin <tagname>
//推送全部尚未推送到遠程的本地標簽
$ git push origin --tags
//刪除指定遠程標簽(在刪除遠程標簽之前,要先從本地刪除)
$ git push origin :refs/tags/<tagname>
保存工作現(xiàn)場
//`存儲`當(dāng)前工作現(xiàn)場腥沽,等以后恢復(fù)現(xiàn)場后繼續(xù)工作
$ git stash
//查看`存儲`的工作現(xiàn)場
$ git stash list
//恢復(fù)`存儲`的工作現(xiàn)場逮走,恢復(fù)的同時把stash內(nèi)容也刪掉
$ git stash pop
//可以多次`stash`,恢復(fù)的時候今阳,先用`git stash list`查看师溅,然后恢復(fù)指定的stash
$ git stash apply stash@{0}
最后推薦
Git
阮一峰
廖雪峰
猴子都懂的Git
歡迎指正!
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者