1.開(kāi)始使用git
1) git config --global user.name "yourname" ?(git config --global? --list 查看已有配置)
2) git config --global user.email "youremail"
3) ssh-keygen -t rsa -C “youremail”
4) 將~/.ssh目錄下生成的id_rsa.pub文件中的key放到服務(wù)器上
? ? ?如果已經(jīng)存在id_rsa文件厦酬,可以生成自己的文件掺涛,但是需要在~/.ssh/中加一個(gè)config文件,內(nèi)容如下:
? ? ?Host git.*.com
? ? ?IdentityFile ~/.ssh/git_id_rsa(自定義的文件名)
? ? ?User yourEmail
5) 使用ssh方式遷出項(xiàng)目: git clone ssh地址
6)查看git配置信息: git config --global? --list
2.git 常用別名配置
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.lg "log --graph --pretty=format:'%Cred%h %Creset - %s? %Cgreen(%ad) %Creset %Cblue <%an>' --date=iso-local"
3.git log美化輸出朴爬,更好看,更直觀
git log --graph --pretty=format:"%Cred%h %Creset - %s? %Cgreen(%ad) %Creset %Cblue <%an>" --date=iso-local
4.基本操作
遷出代碼 —— git pull
查看代碼狀態(tài) —— git status
提交代碼(直接跳過(guò)暫存區(qū)) —— git commit -a -m "message"
推送代碼到服務(wù)器 —— git push
添加代碼到待提交區(qū) —— git add fileName ? ?git add可以有很多含義家肯,比如解決沖突等
------------------------------------------------------------------ 分割線机断,以下命令不是很常用-----------------------------------------------------------------
比較工作目錄中當(dāng)前文件和暫存區(qū)域快照之間的差異, 也就是修改之后還沒(méi)有暫存起來(lái)的變化內(nèi)容 —— git diff (后邊無(wú)需文件名)
移除文件 —— git rm fileName
撤銷對(duì)文件的修改 —— git reset --head
查看<指定文件>最近提交的n條記錄—— git lg <fileName> <-p> -n (-p 顯示提交的差異 )趣斤,盡量加上-n俩块,不然會(huì)出現(xiàn)無(wú)法退出的問(wèn)題(如果有人有明確的退出方法請(qǐng)告知,目前q鍵、ctrl+c典阵、ctrl+z都不管用奋渔,lg命令是在第二條里自定義的,用戶美化log的輸出)
5.分支操作常用命令
查看遠(yuǎn)程分支 —— ?git branch -a
切換到遠(yuǎn)程分支 —— ?git checkout -b 分支本地別名 ?分支遠(yuǎn)程名字(上一步看到的名字) ?如:git checkout -b dev ?remotes/origin/dev (本地看不到遠(yuǎn)程分支的時(shí)候需要git pull 一下)
創(chuàng)建本地分支 —— ?git chckout -b 本地分支名稱
切換分支 —— git checkout 分支名(只能是本地分支名)
推送本地分支到服務(wù)器 ——? git push origin 本地分支名:遠(yuǎn)程分支名(遠(yuǎn)程沒(méi)有就自動(dòng)創(chuàng)建)
刪除本地分支 —— git branch -d 分支名(用于刪除已經(jīng)合并的分支) ? ? ?git branch -D ?分支名(刪除未合并的分支)
刪除遠(yuǎn)程分支 —— git push origin --delete 遠(yuǎn)程分支名
合并分支 —— 先切換到主分支壮啊,git merge 要合并的分支名
更新代碼 —— git pull origin 分支名
推送代碼到分支 —— git push origin 分支名
設(shè)置默認(rèn)推送分支 —— git push --set-upstream origin 分支名 (設(shè)置之后就不用每次push的時(shí)候指定分支了)
6.標(biāo)簽
打附注標(biāo)簽 —— git tag -a 標(biāo)簽名 -m 注釋 ? ? ?例:git tag -a v1.1 -m "version 1.1.0" ?附注標(biāo)簽包含作者時(shí)間等詳細(xì)信息嫉鲸,建議打附注標(biāo)簽
查看標(biāo)簽信息 —— git show 標(biāo)簽名 ? ? 只對(duì)附注標(biāo)簽有效
打輕量標(biāo)簽 —— git tag 標(biāo)簽名 ? ?只適合作為臨時(shí)標(biāo)簽使用
根據(jù)logID打標(biāo)簽 —— git tag -a 標(biāo)簽名 logId中的一段? ? 例:git tag -a v1.2 9fceb02
推送標(biāo)簽到遠(yuǎn)程服務(wù)器 —— git push origin 標(biāo)簽名
推送所有本地標(biāo)簽到遠(yuǎn)程服務(wù)器 —— git push origin --tags
檢出標(biāo)簽 —— git checkout -b 本地標(biāo)簽名 遠(yuǎn)程標(biāo)簽名 ? 注:git并不能真正的檢出標(biāo)簽,而是在標(biāo)簽上新建一個(gè)分支
7. 其他功能
修改遠(yuǎn)程倉(cāng)庫(kù)地址——git remote set-url origin [url]