建立git庫
在當前的文件夾下建立git庫(初始化一個git數據庫)1
git init
- 使用此命令後當前文件夾下的所有文件均能進行版本管理
- 當前文件夾下會多一個
.git
文件夾
git設置
查看當前git設置
1 | git config -l |
全局用戶名設置
用戶名
1 | git config --global user.name "用戶名" |
信箱
1 | git config --global user.email "E-mail" |
設置高亮顯示
1 | git config --global color.ui true |
git config幫助文檔查看
1 | git config --help |
or1
git help config
提交
通常會遵循以下步驟
- 在以初始化git庫的文件夾下建立文件
- 追加文件
- 提交文件
查看當前文件夾的狀態
1 | git status |
- 未被放到索引區及經過修改的文件為紅色顯示
- 被放入索引區的文件會顯示綠色
文件增加至索引區(add)
加入單文件
1 | git add 文件 |
加入多文件
1 | git add 文件1 文件2 .... |
加入當前文件夾中所有文件
1 | git add . |
提交文件至本地庫(commit)
1 | git commit -m "備註" |
- 提交時不允許無備註的提交
- 提交後git寄存了一個新的版本
更新最後的提交(—amend)
場景:以修改過的文件已經commit,不小心又需要修改某個小地方,不想在重新commit一條記錄,可加入—amend參數,將修改後的文件記錄合併在上一條的提交1
git commit --amend
- 輸入此命令後會跳出編輯器,可編輯上一條的備註(可不修改直接退出)
提交記錄(log)
查看提交的記錄信息1
git log
- 含有各種文件提交時的信息及備註
指定條數顯示
1 | git log -數字 |
單行顯示
一條提交記錄併作一行顯示1
2git log --oneline
git log --oneline -4 #一行模式顯示前面四條提交記錄
詳細顯示
包含對文件做了哪些修改、新增那些文件等等1
git log -p
顯示統計信息
顯示提交文件數的統計信息1
git log --stat
幫助文檔
查看git log幫助文檔1
git log --help
恢復文件
未git add
未使用git add
加入索引區之前
使用git checkout
恢復上次文件加入索引區的狀態1
git checkout -- 文件名
已git add
若以使用git add
加入索引區
使用git reset
退出索引區,再使用git checkout
恢復文件1
git reset HEAD 文件名
比較修改內容(diff)
比較當前文件夾中文件 與 索引區文件 的差異1
git diff
- 修改內容會高亮顯示
比較當前文件夾與git庫HEAD的差異
1 | git diff HEAD -- 文件名 |
比較不同版本文件的差異
1 | git diff 版本1 版本2 -- 文件名 |
比較git庫文件的差異
比較索引區的文件 與 git庫文件 的差異
須加入 --cached
參數
1 | git diff --cached |
文件操作
刪除文件
從索引區中刪除文件
1 | git rm --cahed 文件名 |
更名(移動)文件
用於更名文件居多1
git mv 原文件名 更名文件名
忽略管理(.gitignore)
設置Git忽略文件,這些文件不參與Git庫的提交和管理
(例如:python執行時產生的pycache)
- 於
.gitignore
文件中設置不需要管理的文件 .gitignore
須參與版本管理- 詳細設置請參考https://git-scm.com/docs/gitignore
忽略管理文件
1 | echo *.tmp > .gitignore #忽略管理.tmp後綴的文件 |
- 編輯.gitignore加入條件
- 子文件夾下的.tmp文件仍會忽略管理