?
常用命令:
一.?配置git提交的個人信息,請大家配置成自己的名字及公司分配的郵箱地址
git config? —global user.name “name”
git config —global user.email “ email@email.com ”
?
二.?初始下載遠(yuǎn)程代碼
?
git clone git@server:project.git
?
三. 提交到本地倉庫
git add .
git commit -m “comment”
?
四.? 更新代碼
新保持本地工作區(qū)干凈,即進(jìn)行過將代碼合入到本地倉庫
通過git status命令可以查看,會有如下的信息
nothing to commit, working directory clean
?
再更新代碼
git pull ? —rebase
?
五. 提交代碼到遠(yuǎn)程
git push
?
?
六. .gitignore 文件
是過濾本地文件的,可以將本地個人環(huán)境或個人測試及編譯中間文件,運(yùn)行動態(tài)文件的過濾掉,
不上傳到服務(wù)器,保持遠(yuǎn)程代碼庫的純凈
?
七. 建議開發(fā)者創(chuàng)建本地開發(fā)分支,還有一個是同步遠(yuǎn)程代碼的分支
git branch? dev
git checkout dev
可創(chuàng)建開發(fā)分支dev, checkout 可切換分支
?
在dev分支上進(jìn)行編寫代碼,
master分支為同步代碼分支,
?
在本場景中,上傳代碼時可以這樣:
假設(shè)當(dāng)前分支在dev
通過git branch命令可以查看當(dāng)前分支是什么
jinlibindembp:test jinlibin$ git branch
*?dev
? master
如dev前面有*號,說明當(dāng)前分支在dev分支
?
1. 在開發(fā)工具中編寫代碼
2. 提交代碼命令
git add .
git commit -m “add”
3. 切換分支到master
git checkout master
4.更新遠(yuǎn)程代碼
git pull —rebase
5. 合并遠(yuǎn)程代碼到dev
git rebase master dev
?
此時可能代碼會從conflict, git工具會提示conflict的文件
那需要人工解決conflict,將沖突代碼文件重新處理好,
再進(jìn)行
git add .
git rebase —continue
?
成功此時分支將切換到dev
?
6. 分支切換到master
git checkout master
7. 合并代碼到同步分支master
git merge dev
8. 將代碼提交到遠(yuǎn)程
git push
9. 切換分支到dev
git checkout dev
10. 繼續(xù)編碼
?
采用此種方式處理,那代碼的每個提交結(jié)點(diǎn)將成為一條線,不會有分叉,對代碼回退有方便之外。
?
master : 默認(rèn)開發(fā)分支; origin : 默認(rèn)遠(yuǎn)程版本庫
?
?
以下內(nèi)容為轉(zhuǎn)載:
初始化操作
????$ git config -global user.name <name> #設(shè)置提交者名字
????$ git config -global user.email <email> #設(shè)置提交者郵箱
????$ git config -global core.editor <editor> #設(shè)置默認(rèn)文本編輯器
????$ git config -global merge.tool <tool> #設(shè)置解決合并沖突時差異分析工具
????$ git config -list #檢查已有的配置信息
創(chuàng)建新版本庫
????$ git clone <url> #克隆遠(yuǎn)程版本庫
????$ git init #初始化本地版本庫
修改和提交
????$ git add . #添加所有改動過的文件
????$ git add <file> #添加指定的文件
????$ git mv <old> <new> #文件重命名
????$ git rm <file> #刪除文件
????$ git rm -cached <file> #停止跟蹤文件但不刪除
????$ git commit -m <file> #提交指定文件
????$ git commit -m “commit message” #提交所有更新過的文件
????$ git commit -amend #修改最后一次提交
????$ git commit -C HEAD -a -amend #增補(bǔ)提交(不會產(chǎn)生新的提交歷史紀(jì)錄)
查看提交歷史
????$ git log #查看提交歷史
????$ git log -p <file> #查看指定文件的提交歷史
????$ git blame <file> #以列表方式查看指定文件的提交歷史
????$ gitk #查看當(dāng)前分支歷史紀(jì)錄
????$ gitk <branch> #查看某分支歷史紀(jì)錄
????$ gitk --all #查看所有分支歷史紀(jì)錄
????$ git branch -v #每個分支最后的提交
????$ git status #查看當(dāng)前狀態(tài)
????$ git diff #查看變更內(nèi)容
撤消操作
????$ git reset -hard HEAD #撤消工作目錄中所有未提交文件的修改內(nèi)容
????$ git checkout HEAD <file1> <file2> #撤消指定的未提交文件的修改內(nèi)容
????$ git checkout HEAD. #撤消所有文件
????$ git revert <commit> #撤消指定的提交
分支與標(biāo)簽
????$ git branch #顯示所有本地分支
????$ git checkout <branch/tagname> #切換到指定分支或標(biāo)簽
????$ git branch <new-branch> #創(chuàng)建新分支
????$ git branch -d <branch> #刪除本地分支
????$ git tag #列出所有本地標(biāo)簽
????$ git tag <tagname> #基于最新提交創(chuàng)建標(biāo)簽
????$ git tag -d <tagname> #刪除標(biāo)簽
合并與衍合
????$ git merge <branch> #合并指定分支到當(dāng)前分支
????$ git rebase <branch> #衍合指定分支到當(dāng)前分支
遠(yuǎn)程操作
????$ git remote -v #查看遠(yuǎn)程版本庫信息
????$ git remote show <remote> #查看指定遠(yuǎn)程版本庫信息
????$ git remote add <remote> <url> #添加遠(yuǎn)程版本庫
????$ git fetch <remote> #從遠(yuǎn)程庫獲取代碼
????$ git pull <remote> <branch> #下載代碼及快速合并
????$ git push <remote> <branch> #上傳代碼及快速合并
????$ git push <remote> : <branch>/<tagname> #刪除遠(yuǎn)程分支或標(biāo)簽
????$ git push -tags #上傳所有標(biāo)簽
?
?轉(zhuǎn)載處: http://www.douban.com/note/245204752/
?
git資料鏈接:
http://blog.haohtml.com/archives/10129
http://www.xbc.me/git-commands/
http://blog.csdn.net/kieven2008/article/details/6594333
?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
