1,配置使用者名稱和郵箱
$ git config --global user.name "your name"
$ git config --global user.email "[email protected]"
2,初始化乙個git倉庫
$ git init
3,新增檔案到git倉庫
(2)使用命令git commit -m
,完成
4,檢視狀態
$ git status
: 可以讓我們時刻掌握倉庫當前的狀態
5,檢視修改內容
$ git diff
: 顧名思義就是檢視difference,顯示的格式正是unix通用的diff格式
用git diff head -- red.txt
命令可以檢視工作區和版本庫裡面最新版本的區別
6,日誌檢視
(1)git log可以檢視提交歷史,以便確定要回退到哪個版本。
(2)用git reflog檢視命令歷史,以便確定要回到未來的哪個版本。
簡化log命令:
$ git log --pretty=oneline
$ git log --pretty=oneline --abbrev-commit
用git log --graph
命令可以看到分支合併圖。
7,回退
head指向的版本就是當前版本,因此,git允許我們在版本的歷史之間穿梭,使用命令:
git reset --hard commit_id。
8,撤銷修改
$ git checkout -- file
可以丟棄工作區的修改
讓這個檔案回到最近一次git commit或git add時的狀態
reset和check的區別:
$ git reset
是丟棄版本或者暫存區的修改;
$ git checkout
是丟棄工作區的修改
9,刪除檔案
$ git
rm test.txt
然後提交即可。
10,建立ssh key:
$ ssh-keygen -t rsa -c "[email protected]"
11,遠端庫
檢視遠端庫的資訊:$ git remote
顯示更詳細的資訊:$ git remote -v
關聯乙個遠端庫:$ git remote add origin git@server-name:path/repo-name.git
推送遠端分支:$ git push origin master
建立遠端origin的dev分支到本地:git checkout -b dev origin/dev
刪除遠端分支:$ git push origin --delete asynarena-new
(如果git pull提示no tracking information,則說明本地分支和遠端分支的鏈結關係沒有建立)
刪除已有的github遠端庫:$ git remote rm origin
關聯gitee的遠端庫:$ git remote add origin [email protected]:liaoxuefeng/learngit.git
12,第一次推送master分支的所有內容至遠端庫
$ git push -u origin master
此後,每次本地提交後,只要有必要,就可以使用命令git push origin master
推送最新修改
13,轉殖乙個倉庫
$ git clone
$ git clone [email protected]:michaelliao/gitskills.git
14,建立與合併分支
檢視分支:$ git branch
建立分支:$ git branch
切換分支:$ git checkout 或者$ git switch
建立+切換分支:$ git checkout -b 或者$ git switch -c
合併某分支到當前分支:$ git merge
刪除分支:$ git branch -d
強行刪除:$ git branch -d
(一般針對於還未合併的分支需要強制刪除)
15,要強制禁用fast forward模式
$ git merge --no-ff -m "merge with no-ff" dev
16,本地貯藏工作區內容
$ git stash
檢視貯藏
$ git stash list
恢復貯藏
$ git stash pop # (恢復的同時把stash內容也刪了)
刪除貯藏
$ git stash drop
恢復指定的貯藏
17,複製乙個特定的提交到當前分支
$ git cherry-pick 提交碼
18,把本地未push的分叉提交歷史整理成直線
$ git rebase
19,標籤
建立標籤:$ git tag v1.0
檢視所有標籤:$ git tag
在歷史提交記錄上打標籤:$ git tag v0.9 f52c633
檢視標籤資訊:git show v0.9
建立帶有說明的標籤,用-a指定標籤名,-m指定說明文字:$ git tag -a v0.1 -m "version 0.1 released" 1094adb
刪除標籤:$ git tag -d v0.1
推送某個標籤到遠端:$ git push origin v1.0
一次性推送全部尚未推送到遠端的本地標籤:$ git push origin --tags
刪除遠端標籤:
先從本地刪除:$ git tag -d v0.9
然後遠端刪除:$ git push origin :refs/tags/v0.9
20,自定義git
讓git顯示顏色:$ git config --global color.ui true
21,忽略特殊檔案
22,配置別名
$ git config --global alias.st status
以後$ git st 表示$ git status
舉例:
$ git config --global alias.co checkout
$ git config --global alias.ci commit
$ git config --global alias.br branch
$ git config --global alias.unstage 'reset head'
當你敲入命令:
$ git unstage test.py
實際上git執行的是:
$ git reset head test.py
配置乙個git last,讓其顯示最後一次提交資訊:
$ git config --global alias.last 'log -1'
這樣,用git last就能顯示最近一次的提交 Git 常用命令清單
git工作流程概圖 下面是我整理的常用 git 命令清單。幾個專用名詞的譯名如下。在當前目錄新建乙個git 庫 git init 新建乙個目錄,將其初始化為git 庫 git init project name git clone url git的設定檔案為.gitconfig,它可以在使用者主目錄...
Git 常用命令清單
二 分支的增刪查改 注意 不能刪除當前所在本地分支。三 檢視提交資訊日誌 四 版本回退 回退到上上版本 git reset hard head 回退到上上版本 git reset hard head 2 回退到某個版本 git reset hard 強制推送到遠端分支 git push f 注意 h...
Git常用命令清單
參考 git 常用命令清單 注意 不能刪除當前所在本地分支。回退到上上版本 git reset hard head 回退到上上版本 git reset hard head 2 回退到某個版本 git reset hard 強制推送到遠端分支 git push f 注意 head指向的版本是當前版本,...