git的一些小事項
1.設置簽名
形式
用戶名:liar
Email地址:
作用
區分不同開發人員的身份
辨析
這裏設置的簽名和登錄遠程庫(代碼託管中心)的賬號、密碼沒有任何關係
命令
項目級別/倉庫級別:僅在當前本地庫範圍內有效
git config user.name Liassd
git config user.email [email protected]
信息保存位置:./git/config文件
系統用戶級別:登錄當前操作系統的用戶範圍
git config --global user.name Liassd
git config --global user.email [email protected]
信息保存位置:~/.gitconfig文件
級別優先
就近原則:項目級別優先於系統用戶級別,二者都有時採用項目級別的簽名
2 .基本操作
狀態查看操作
git status
添加文件到緩存區
git add <filePath> 也可以是 . 代表全部
文件從緩衝區刪除
git rm --cached <filePath>
文件添加提交註釋
git commit -m "text" <fileName> 也可以是沒有 代表全部
查看歷史提交版本
多屏顯示控制方式 空格向下翻頁 b向上翻頁 q退出
git log
git log --pretty=oneline
git log --oneline 顯示當前以後的
git reflog 顯示全部歷史記錄
前進後退
本質{head}指針的移動
- 基於索引值操作[推薦]
git reset --hard [局部索引]
- 使用^符號:只能後退
git reset --hard HEAD^ 注:一個^表示後退一步,n個表示後退n步
- 使用~符號:只能後退
git reset --hard HEAD~n 注:表示後退n步
reset命令的三個參數對比
- –soft參數
僅僅在本地庫移動HEAD指針 暫存區 工作區 本地庫
- –mixed參數
在本地庫移動HEAD指針 重置暫存區 工作區 本地庫 暫存區
- –hard參數
在本地庫移動HEAD指針 重置暫存區 重置工作區 本地庫 暫存區 工作區
3.分支操作
創建分支
git branch <分支名>
創建遠程關聯分支
git branch lch_js origin/lch_js
刪除分支
git branch -d <分支名>
查看分支
git branch -v
切換分支
git checkout <分支名>
合併分支
- 第一步:切換到接受修改的分支(被合併,增加新內容)上
git checkout<[被合併分支名>
- 第二部:執行merge命令
git merge <有新內容分支名>
- 解決衝突
衝突的表現
<<<<<<< HEAD
衝突的內容 ------>當前分支內容
==========
衝突的內容 ------>另一分支內容
>>>>>>> MASTER
衝突的解決
第一步:編輯文件,刪除特殊符號
第二步:把文件修改到滿意的程度,保存退出
第三步:git add[文件名]
第四步:git commit -m “日誌信息”
注意:此時commit一定不能帶具體文件名 - 在本地新建分支 關聯到遠程分支的時候
git push --set-upstream origin master
- 查看遠程分支名
git branch -a
其他一些問題
如果我們git clone的下載代碼的時候是連接的https://而不是git@git (ssh)的形式,當我們操作git pull/push到遠程的時候,總是提示我們輸入賬號和密 碼才能操作成功,頻繁的輸入賬號和密碼會很麻煩。
解決辦法:
git bash進入你的項目目錄,輸入:
git config --global credential.helper store
然後你會在你本地生成一個文本,上邊記錄你的賬號和密碼。當然這些你可以不用關心。
然後你使用上述的命令配置好之後,再操作一次git pull,然後它會提示你輸入賬號密碼,這一次之後就不需要再次輸入密碼了。