msys git 安裝配置、git命令行使用


安裝

1、安裝msys git客戶端程序

2、打開git bash,命令ssh-keygen –C “admin@test.cn “ –t rsa

3、復制C:\Users\felix\.ssh\id_rsa.pub的內容到gitHublab里面的個人profile--ssh key中,title隨便起

4、初始配置

git config --global user.name "huangjunhua"
git config --global user.email "huangjunhua@cnicgz.cn"
git config --list
pwd

5、測試ssh,命令ssh -T git@git.dev.cnicgz.cn -p 6822

簡單使用

cd /path/to

#克隆
git clone ssh://git@git.dev.cnicgz.cn:6822/datacenter/maintain.git

#提交本地
git commit -am “修改信息”

#上傳遠程
git push

#遠程更新
#建議用git fetch && git merge
git pull

 

要點

Git 本地數據管理,大概可以分為三個區,工作區,暫存區和版本庫。

- 工作區(Working Directory)是我們直接編輯的地方,例如 Android Studio 打開的項目,記事本打開的文本等,肉眼可見,直接操作。

- 暫存區(Stage 或 Index) 數據暫時存放的區域,可在工作區和版本庫之間進行數據的友好交流。

- 版本庫(commit History) 存放已經提交的數據,push 的時候,就是把這個區的數據 push 到遠程倉庫了。

 

詳細使用

--命令git branch -a,列出所有分支,git branch dev 創建本地dev分區

--命令git checkout dev 切換到dev分區,工作區變成dev分支的內容

--命令git checkout –b dev 創建並切換到本地分支dev (其中,git branch dev 是創建本地分支dev ;  git checkout dev 是切換分支)

--命令git branch –d dev 刪除分支dev

--命令git clone --recursive -b $分支 $遠程倉庫 $路徑
分支:master
遠程倉庫:ssh://git@git.dev.cnicgz.cn:6822/datacenter/maintain.git
路徑:/path/to/src
倉庫自動命名名為origin(origin相當於別名,運行git remote –v)

--命令git status  查看本地(工作區)更新還沒提交到本地分支的文件(實際文件目錄)


--命令git commit -am "本次提交描述"(結合git add. 和 git commit -m)工作區內直接提交到本地分支
git add . 把本地更新還沒提交到本地分支的文件增加到暫存區==git stage .
git commit –m "本次提交描述" 把暫存區的內容提交到本地分支

--命令git push origin 本地分支:遠程分支  
把本地分支內容提交到遠程分支,origin為默認遠程倉庫

--命令git log 查看git commit 版本

--命令git fetch 下載遠程更新,所有遠程倉庫內容下載到本地版本庫(.git)

--命令git merge origin/cms 把當前本地分支和遠程指定分支進行merge, 若出現(XXX|MERGING)狀態, 利用 git diff 查看沖突無法解決的地方

--命令git pull origin 等於 git fetch && git merge,盡量使用git fetch 和git merge (6、7步)來代替git pull
--命令git stash 備份工作區內容(從最近commit中備份),然后可以進行修復bug,修復完利用git stash pop恢復工作區內容 --命令git reset <commit_id> 默認-soft, 如果要hard程度就git reset --hard <commit_id>回退版本, 回退版本后想要回最新版本, --命令git reflog找到版本號后再次git reset <commit_id> --命令git rebase dev 把dev分支上的東西更新到當前分支上

場景應用

修改了4個文件,在不放棄任何修改的情況下,其中一個文件不想提交,如何操作?(沒add : git add 已經add: git reset –soft )
修改到一半的文件,突然間不需要或者放棄修改了,怎么恢復未修改前文件? (git checkout)
代碼寫一半,被打斷去做其他功能開發,未完成代碼保存?(git stash)
代碼寫一半,發現忘記切換分支了?(git stash & git checkout)
代碼需要回滾了?(git reset)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM