配置本地文件名和郵箱
git config --global user.name "Your name"
git config --global user.email your_email@gmail.com
常用命令
git bash here git clone url //克隆項目到本地
git status //查看修改的文件
git add . //保存所有修改過的文件
git commit -m "此次提交描述" //保存到本地git
git push origin master //上傳 (要推到的遠程分支名稱 例如分支名稱是aaa git push origin aaa)
1.提交推送
git add file_1 file_2 //添加暫存文件
git commit -m 'msg1' //添加文件增加備注
git pull //拉取
git push //推送至遠程
正確提交流程:暫存-->提交-->獲取-->拉热院病(解決沖突-->提交)-->推送
2.貯藏工作區(qū)
git stash //存儲工作區(qū)
git stash save 'msg1' //存儲工作區(qū)并備注
git stash list //展示存儲區(qū)列表
git stash apply //應(yīng)用存儲區(qū)第一個 (不刪除)
git stash pop //應(yīng)用存儲區(qū)第一個 (并刪除)
git stash drop //刪除存儲區(qū)最新的內(nèi)容
git stash@{0} *apply / pop / drop 第1個 什荣,git stash list獲取下標
3.回撤版本
git reset --soft 34524234 // 將版本重置到34524234 版本抄伍,
git reset --soft HEAD^ 將版本重置到上一個版本
git reset --hard 34524234
簡單總結(jié)一下,其實就是--soft 特铝、--mixed以及--hard是三個恢復(fù)等級。使用--soft就僅僅將頭指針恢復(fù)演熟,已經(jīng)add的緩存以及工作空間的所有東西都不變频敛。如果使用--mixed,就將頭恢復(fù)掉膛檀,已經(jīng)add的緩存也會丟失掉锰镀,工作空間的代碼什么的是不變的。如果使用--hard咖刃,那么一切就全都恢復(fù)了泳炉,頭變,aad的緩存消失嚎杨,代碼什么的也恢復(fù)到以前狀態(tài)花鹅。
4.提交回滾
git revert HEAD -n //回滾到上一個版本
git commit -m '回滾到該次提交'
git push
5.版本標簽記錄 tag
git tag //查看已有的標簽
git tag v1.0,0 //標記最新的提交記錄標簽v1.0.0
git tag v1,0.0 1234234 //標記指定的提交
git tag -d v1.0.0 //刪除名為v1.0.0的標簽
git push origin v1.0.0 //推送遠程
git push origin :refs/tags/v1.0.0 //刪除遠程倉庫中的標簽
6.創(chuàng)建分支
git branch //查看分支 -a查看所有分支
git branch dev //在當(dāng)前分支基礎(chǔ)上,以最新版本創(chuàng)建名為dev的分支
git branch dev d12312312 //以d12312312為版本記錄創(chuàng)建dev分之
git checkout dev //切換分之到dev
git checkout -b dev //創(chuàng)建并切換分之
git branch -d dev //刪除本地dev分之
git push origin dev:dev // 推送到遠程分之
git push --delete origin dev //刪除遠程dev分支
7.合并分支
git checkout master 切換分之
git merge de //合并de分支到master
8.拉取分支
git fetch //獲取遠程更新
git push //將本地分支推送到遠程
9.操作遠程分支
git branch -r 查看所有遠程分支 -a所有分支
git checkout -b dev --trach origin/dev //創(chuàng)建dev通過遠程分支dev 并切換 --trach可追蹤
git branch -r -d origin/dev //刪除遠程dev分支
git push origin :dev
10.查看修改記錄
git log index.html //查看目標文件提交信息記錄
git log -p index.html //查看目標文件所有提交修改內(nèi)容
11.挑選版本合并 cherry-pick
git checkout dev //要合并到dev必須先切換到dev
git cherry-pick d123123 // 將制定版本合并到當(dāng)前分支枫浙,并且保留當(dāng)次提交信息
總結(jié):
source tree是非常好用的git gui 工具刨肃,它的每個操作和git命令是有對應(yīng)關(guān)系的:
抓取就相當(dāng)于git fetch,
拉取就相當(dāng)于git pull,
推送就相當(dāng)于git push,
暫存(儲藏)就相當(dāng)于git stash,
遴選就相當(dāng)于git cherry-pick,
右鍵審查選定的修改日志就相當(dāng)于git log
右鍵審查選定項目相當(dāng)于git blame
右鍵提交回滾就相當(dāng)于git revertreact