本文為博主原創,未經允許不得轉載:
1.查看git基礎配置信息
1.查看用戶名和郵箱地址
git config user.name
git config user.email
2.修改用戶名和郵箱地址
git config --global user.name "username"
git config --global user.email "email"
2.常用文件夾對應的操作命令
git init 命令把這個目錄變成Git可以管理的倉庫:(先進入項目文件夾)通過命令 git init 把這個目錄變成git可以管理的倉庫
git remote -v 即可查看git的服務器地址
pwd 命令用於顯示當前目錄
mkdir learngit 創建文件夾
git log 可以查看提交歷史
git log --author 查找指定用戶的提交日志
cat readme.txt 查看文件
rm test.txt 刪除文件
git rm test.txt 用於刪除一個文件
3.git 分支管理命令
創建分支: git branch <name>
切換分支: git checkout <name>
刪除分支: git branch -d <name>
刪除遠程分支: git branch -r -d origin/test
查看分支: git branch
git branch -a : 查看全部分支(遠程的和本地的)
git branch -l : 查看本地分支
git branch -vv 可以查看本地分支對應的遠程分支
git branch 不帶參數:列出本地已經存在的分支,並且在當前分支的前面用"*"標記
4.將git項目clone到本地
clone項目到本地: git clone <項目地址>
獲取指定分支到本地 : git clone -b dev_jk http://10.1.1.11/service/tmall-service.git
5.將本地變更代碼提交到git倉庫
git status: 查看有變更的文件(命令用於顯示工作目錄和暫存區的狀態。使用此命令能看到那些修改被暫存到了, 哪些沒有, 哪些文件沒有被Git tracked到。git status不顯示已經commit到項目歷史中去的信息。)
git add . 或 git add -A 根據ignore的配置,添加跟蹤文件,其中的.或-A表示添加所有更改過的文件,如 git add file2.txt file3.txt。
git commit -m "update describe" git提交文件添加提交注釋:
git push 將git暫存區提交的文件提交到git遠程倉庫
git push origin 將當前分支推送到origin主機的對應分支。
git reset 回退版本,上一個版本是HEAD^,上上一個版本就是HEAD^^
6.更新最新代碼及沖突解決
git pull 從遠程拉取最新版本 到本地 自動合並 merge git pull origin master
git fetch 從遠程獲取最新版本 到本地 不會自動合並 merge git fetch origin master
git diff 合並后產生沖突,可輸入指令查看沖突
7.分支合並
如果我們想把test分支合並到master分支中,該怎么弄呢?首先先切換到master分支,然后執行git merge test
1.開發分支(dev)上的代碼達到上線的標准后,要合並到 master 分支
git checkout dev
git pull
git checkout master
git merge dev
git push -u origin master
2.當master代碼改動了,需要更新開發分支(dev)上的代碼
git checkout master
git pull
git checkout dev
git merge master
git push -u origin dev
8.git stash 暫存區文件暫存
說明:git 切換分支時會把未add或未commit的內容帶過去, 因為未add的內容不屬於任何一個分支, 未commit的內容也不屬於任何一個分支。
也就是說,對於所有分支而言, 工作區和暫存區是公共的 要想在分支間切換, 又不想又上述影響, 怎么辦呢? git stash搞起。
要注意,在當前分支git stash的內容, 在其他分支也可以git stash pop出來,為什么? 因為:工作區和暫存區是公共的。
git stash save <message> 暫存區保存文件及批注
git stash pop 釋放暫存后,會刪掉stash
git stash list 查看暫存區的所有暫存修改
git stash apply stash@{X} 取出相應的暫存
git stash drop stash@{X} 將記錄列表中取出的對應暫存記錄刪除
9. tag常用命令總結
git tag tagName 創建輕量標簽
git tag 列出當前倉庫的所有標簽
git tag -d tagName 刪除標簽
git push origin tagName 發布標簽,將tagName標簽提交到git服務器
git push origin -–tags 將本地所有標簽一次性提交到git服務器
注:
git與svn對比:
svn為集中式進行版本控制
git為分布式進行版本控制
git工作流程:
1.從遠程倉庫中克隆git資源作為本地倉庫
2.從本地倉庫中checkout代碼然后進行代碼修改
3.在提交前先將代碼提交到暫存區
4.提交修改,提交到本地倉庫,本地倉庫中保存修改的各個歷史版本
5.在修改完成后,需要和團隊成員共享代碼時,可以將代碼push到遠程倉庫。