git常用指令
- $ git init
通過git init命令把這個目錄變成Git可以管理的倉庫 - $ git add file
git add告訴Git,把文件添加到倉庫 - $ git commit -m "提交說明"
git commit告訴Git,把文件提交到倉庫 - $ git status
git status命令可以讓我們時刻掌握倉庫當前的狀態 - $ git diff file
查看更改內容 - $ git log --pretty=oneline
git log命令顯示從最近到最遠的提交日誌 - $ git reset --hard HEAD^
回退一個版本 ,幾個^就是回退幾個版本 - $ cat file
查看文件內容 - $ git reset --hard commit id
回退到commit id的版本 Git回退版本的速度非常快,在Git內部有個指向當前版本的HEAD指針,當你回退版本的時候,Git隻是把指針指向的位置換了一下。 - $ git reflog
git reflog用來記錄你的每一次命令 Git的版本庫裏存了很多東西,其中最重要的就是稱為stage(或者叫index)的暫存區,還有Git為我們自動創建的第一個分支master,以及指向master的一個指針叫HEAD。 - 我們把文件往Git版本庫裏添加的時候,是分兩步執行的
第一步是用git add把文件添加進去,實際上就是把文件修改添加到暫存區; 第二步是用git commit提交更改,實際上就是把暫存區的所有內容提交到當前分支。 因為我們創建Git版本庫時,Git自動為我們創建了唯一一個master分支,所以,現在,git commit就是往master分支上提交更改。 你可以簡單理解為,需要提交的文件修改通通放到暫存區,然後,一次性提交暫存區的所有修改。 - $ git checkout -- file
丟棄工作區的修改 - $ git reset HEAD file
git reset命令既可以回退版本,也可以把暫存區的修改回退到工作區。當我們用HEAD時,表示最新的版本 - $ git rm file
從版本庫中刪除該文件 - $ git checkout -- file
如果刪除錯了通過git checkout可以一鍵還原 - $ ssh-keygen -t rsa -C GitHub賬戶名
創建SSH Key - $ git remote add origin GitHub地址
將本地倉庫與遠程倉庫關聯,必須有擁有SSH Key的公鑰 添加後,遠程庫的名字就是origin,這是Git默認的叫法,也可以改成別的,但是origin這個名字一看就知道是遠程庫。 - $ git push -u origin master
把本地庫的內容推送到遠程,用git push命令,實際上是把當前分支master推送到遠程。 - $ git clone GitHub地址
克隆 GitHub地址的倉庫 - $ git branch
查看分支 - $ git branch
創建分支 - $ git checkout
切換分支 - $ git checkout -b
創建+切換分支 - $ git merge
合並某分支到當前分支 - $ git branch -d
刪除分支 - $ git log --graph
查看分支合並圖 通常,合並分支時,如果可能,Git會用Fast forward模式,但這種模式下,刪除分支後,會丟掉分支信息。 - $ git merge --no-ff -m "merge with no-ff" dev
使用--no-ff參數,禁用Fast forward - $ git stash
將分支儲存起來,等需要時恢複 - $ git stash list
查看儲存起來的分支 恢複儲存分支的兩種方法: 一是用git stash apply恢複,但是恢複後,stash內容並不刪除,你需要用git stash drop來刪除。 另一種方式是用git stash pop,恢複的同時把stash內容也刪了: - $ git branch -D feature-vulcan
強行刪除分支 - $ git remote
查看遠程庫的信息 - $ git remote -v
顯示更詳細的信息 - $ git push origin master
推送分支,就是把該分支上的所有本地提交推送到遠程庫。推送時,要指定本地分支,這樣,Git就會把該分支推送到遠程庫對應的遠程分支上 - $ git tag v1.0
當前版本打一個新標簽 - $ git tag
查看所有標簽 - $ git tag v0.9 -m "version 0.9" commit id
給某一個提交的版本打標簽,-m說明文字 - $ git show <標簽>
查看標簽信息 - $ git tag -d <標簽>
刪除標簽 - $ git push origin <標簽>
推送標簽到遠程倉庫 - $ git push origin --tags
將所有標簽全部推送到遠程倉庫 - $ git tag -d <標簽>
如果標簽已經推送到遠程,要刪除遠程標簽先刪除本地標簽 - $ git push origin :refs/tags/<標簽>
然後從遠程刪除
最後更新:2017-08-23 20:02:32