iOS開發(fā)之git學(xué)習(xí)

/* 初始化git倉庫:git init */


/* 添加文件到git倉庫 */

分兩步:

第一步:追蹤文件:git add 或者git add .,注意多次使用,添加多個(gè)文件。

第二步:提交記錄:git commit -m"提交記錄",完成。


/* 查看工作區(qū)的狀態(tài):git status */


如果git status告訴你有文件被修改過,用git diff可以查看修改的內(nèi)容。


/* 版本回退 */


git reset --hard commit_id可以讓我們在版本的歷史之間穿梭。

回退到之前版本,用git log查看提交歷史。

從歷史版本回退到未來版本,用git reflog來查看命令歷史。


/* 撤銷修改 */


如果不小心改亂了某個(gè)文件的內(nèi)容,想直接丟棄工作區(qū)的修改后,用git checkout --file.

如果不但改亂了 工作區(qū)某個(gè)文件的內(nèi)容,還添加到了暫存區(qū),想丟棄修改。

分兩步:

第一步:git reset head file,

第二步:git checkout --file.


/* 刪除文件:git rm(盡量別用) */


/* 構(gòu)建遠(yuǎn)程倉庫 */


1.創(chuàng)建SSH Key(如果用戶目錄下沒有.ssh目錄,或者有了.ssh目錄但是沒有id_rsa和id_rsa.pub,其中id_rsa是私鑰,is_rsa是公鑰(這個(gè)可以隨便告訴別人)) ssh -keygen -t rsa? -C “yo uremail@example.com”


/* 保存密碼 */


eval “$(ssh-agent -s)”

ssh-add ~/.ssh/id_rsa

/* 驗(yàn)證key */


ssh -T git@github.com

2.登錄git.oschina.com 打開ssh公鑰頁面,然后在key廣本框里粘貼id_rsa.pub的內(nèi)容


/* 關(guān)聯(lián)遠(yuǎn)程庫 */



第一步:在本地的倉庫下運(yùn)行命令

git remote add origin https://git.oschina.net/wuhongxing/gcd.git

第二步:把所有的本地庫的內(nèi)容推到遠(yuǎn)程庫上

git push -u origin master(第一次)? 之后每次可以git push origin master


/* 從遠(yuǎn)程庫克隆 */


要克隆一個(gè)倉庫,首先必須知道倉庫的地址,然后使用git clone命令克隆。

Git支持多種協(xié)議,包括https,但通過ssh支持的原生git協(xié)議速度最快。

git clone https://git.oschina.net/wuhongxing/gcd.git

/* 分支管理 */



Git鼓勵(lì)大量使用分支:

查看分支:git branch

查看所有分支(包括遠(yuǎn)程分支):git branch -a

創(chuàng)建分支:git branch

切換分支:git checkout

創(chuàng)建+切換分支:git checkout -b <branch-name>

合并某分支到當(dāng)前分支:git merge <branch-name>

合并某分支到當(dāng)前分支(普通模式):git merge --no-ff -m "提交記錄" <branch-name>

取消合并:git merge -abort

刪除分支:git branch -d <branch-name>

刪除遠(yuǎn)程分支:git push origin :<branch-name>(origin后面的空格不能少)


/* bug分支 */



git stash把當(dāng)前工作現(xiàn)場“儲(chǔ)藏”起來,等以后恢復(fù)現(xiàn)場后繼續(xù)工作

git stash list可以查看剛剛儲(chǔ)藏的工作現(xiàn)場

git stash apply恢復(fù),但是不刪除stash的內(nèi)容,用git stash drop來刪除

git stash pop恢復(fù)的同時(shí)刪除stash的內(nèi)容


/* feature分支 */



開發(fā)一個(gè)新的feature,最好新建一個(gè)分支

如果要丟棄一個(gè)沒有被合并過的分支,可以通過git branch -d <name>強(qiáng)行刪除


/* 多人合作 */


git remote或者git remote -v

從本地推送分支,使用git push origin branch-name,如果推送失敗,選用git pull抓取遠(yuǎn)程的新提交

在本地創(chuàng)建和遠(yuǎn)程分支對應(yīng)的分支git checkout -b branch-name origin/branch-name

建立本地分支和遠(yuǎn)程分支的關(guān)聯(lián)git branch —set-upstream branch-name origin/branch-name

從遠(yuǎn)程抓取分支,使用git pull,如果有沖突,要先處理沖突


/* 最后比較好玩的自定義log */


git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,737評論 9 163
  • 1.git的安裝 1.1 在Windows上安裝Git msysgit是Windows版的Git,從https:/...
    落魂灬閱讀 12,720評論 4 54
  • 你來過 在我心里 只有我知道 我不告訴他們 我只告訴 夏天 告訴 風(fēng)
    雪莉詩話閱讀 308評論 5 12
  • 節(jié)選自:Linux高性能服務(wù)器編程 Reactor模式要求主線程(I/O處理單元)只負(fù)責(zé)監(jiān)聽文件描述上是否有事件...
    Felicia1993閱讀 437評論 0 0