一营密、注冊
二、刪除倉庫
(1)永票、選中要刪除的倉庫卵贱、點擊settings,輸入倉庫名稱滥沫,刪除
三、創(chuàng)建倉庫
(1)键俱、出入倉庫名稱
(2)兰绣、是否在倉庫中加一個readme文檔
四、克隆代碼
(1)编振、使用SSH協(xié)議缀辩,SSH和HTTPS(傳輸加密協(xié)議,每次都要輸入用戶名和密碼)
(2)踪央、將地址復(fù)制
(3)臀玄、進入workspace,輸入git clone粘貼地址
五、配置SSH
(1)畅蹂、 ssh-keygen -t rsa -C "注冊時所輸入的郵箱"
(2)健无、打開d_sapub(公匙)復(fù)制代碼
(3)、回到Github液斜,點擊右上角標(biāo)點擊settings累贤。
(4)、點擊SSH and GPG keys少漆,點擊New SSH key臼膏,輸出title,粘貼Key示损。
(5)渗磅、點擊添加
(6)、git clone 粘貼地址
六检访、同步代碼(如何將修改的代碼提交到遠端)
(1)始鱼、進入目錄
(2)、設(shè)置用戶名和密碼
git config --global user.name @前面的用戶名
git config --global user.email emailAddress
(3)脆贵、git status 查看文件修改的狀態(tài)
(4)风响、git add . (添加文件必須用git add . 及git commit -a -m '注釋信息' git push(但是遠端必須有當(dāng)前的分支才能進行push,因此需要映射分支) 修改文件用git commit -a -m '注釋信息')
(5)、git commit -a -m "注釋信息" 不管是添加還是修改都提交上去丹禀,忘記輸入 -m ,按esc輸入:q或:wq(保存并退出)退出(-a代表add添加的縮寫 -m代表注釋信息)
(6)鞋怀、git commit 提交
(7)双泪、git push 提交到遠端
(8)、git add . 把當(dāng)前文件夾下所有的文件添加到索引倉庫里進行跟蹤修改
(只修改文件里的內(nèi)容不需要git add . 只有更新了文件才需要)
(9)密似、git pull 從遠端到本地 (其實就是git fatch + git merge 一個是拉取代碼焙矛,一個是合并代碼)
(10)、git branch -a 查看所有分支
(11)残腌、git fetch 拉取代碼
七村斟、分支(多人合作贫导,一般在分支上開發(fā),在主干上發(fā)布)
(1)蟆盹、git branch 查看分支
(2)孩灯、git checkout -b "20161128-footballSNS-bugflx" 從當(dāng)前分支上拉一個分支出來
(3)、git checkout master 切換分支
(4)逾滥、git push --set-upstream origin "分支名" 映射分支 (在遠端創(chuàng)建一個分支 遠端有分支才能進行push峰档,合并等操作)
(5)、git diff 查看改動(difference)
(6)寨昙、刪除本地分支 git branch -d
(6)讥巡、命令git checkout -- readme.txt意思就是,把readme.txt文件在工作區(qū)的修改全部撤銷舔哪,這里有兩種情況:
一種是readme.txt自修改后還沒有被放到暫存區(qū)欢顷,現(xiàn)在,撤銷修改就回到和版本庫一模一樣的狀態(tài)捉蚤;
一種是readme.txt已經(jīng)添加到暫存區(qū)后抬驴,又作了修改,現(xiàn)在外里,撤銷修改就回到添加到暫存區(qū)后的狀態(tài)怎爵。
總之,就是讓這個文件回到最近一次git commit或git add時的狀態(tài)盅蝗。
pwd 用于顯示當(dāng)前目錄
ls -ah 用于查看隱藏的目錄
git checkout -- file命令中的--很重要鳖链,沒有--,就變成了“切換到另一個分支”的命令墩莫,我們在后面的分支管理中會再次遇到git checkout命令芙委。
用命令git reset HEAD file可以把暫存區(qū)的修改撤銷掉(unstage),重新放回工作區(qū)
git reset命令既可以回退版本,也可以把暫存區(qū)的修改回退到工作區(qū)逢享。當(dāng)我們用HEAD時褥傍,表示最新的版本
git checkout其實是用版本庫里的版本替換工作區(qū)的版本,無論工作區(qū)是修改還是刪除侧啼,都可以“一鍵還原”。
命令git rm用于刪除一個文件堪簿。
(7)痊乾、把本地庫的內(nèi)容推送到遠程,用git push命令椭更,實際上是把當(dāng)前分支master推送到遠程哪审。
由于遠程庫是空的,我們第一次推送master分支時虑瀑,加上了-u參數(shù)湿滓,Git不但會把本地的master分支內(nèi)容推送的遠程新的master分支滴须,還會把本地的master分支和遠程的master分支關(guān)聯(lián)起來,在以后的推送或者拉取時就可以簡化命令叽奥。
git push origin master 推送到遠程庫
要關(guān)聯(lián)一個遠程庫扔水,使用命令git remote add origin git@server-name:path/repo-name.git;
關(guān)聯(lián)后而线,使用命令git push -u origin master第一次推送master分支的所有內(nèi)容铭污;
此后,每次本地提交后膀篮,只要有必要嘹狞,就可以使用命令git push origin master推送最新修改;
八誓竿、diff代碼 (找不同)
九磅网、merge代碼(需有管理員權(quán)限也就是合并代碼的意思)
(1)、git merge 20161128-footballSNS (merge的同時進行了commit的操作 merge后面跟的是分支的名稱 這個操作是在master主干上進行操作的)
(2)筷屡、git push
十涧偷、git的簡寫
git config --global allas.st status (廖-配置別名)
例: git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.br branch
st 就代表 status co 就代表checkout
ci 就代表 commit br 就代表branch
十一、pull代碼
從遠端到本地
誰合并誰毙死,就用誰merge 誰
例 git merge master 得到線上最新的版本
因此每天都需要用自己的分支去merge master代碼燎潮,以此得到最新的代碼
十二、日志
(1)扼倘、git log
log的記錄不跟蹤分支确封,記錄的是這個項目上所做的所有操作
(2)、git log --pretty=oneline
同樣是日志記錄再菊,讓記錄信息顯示在一行
十三爪喘、代碼回滾(就是當(dāng)進行錯誤的操作后可以回退到操作之前的版本)
(1)、git reset --hard 版本號前幾位(hard強制纠拔,不提示)
說明:git reset --hard用于回滾至最近的一次操作
git reset --hard 后面加上版本號(也就是git log 日志查看顯示的版本號)就是回退到這一個版本的操作之前
十四秉剑、解決沖突
沖突一般發(fā)生在merge代碼的時候,當(dāng)merge代碼稠诲,發(fā)現(xiàn)merge不了侦鹏,可能就是代碼發(fā)生了沖突,也就是兩個不同的分支修改了同一個文件或者內(nèi)容臀叙,這時候如果都需要保留种柑,就簡單修改語法,直接提交匹耕,如果不行,就需要和另外一位分支的管理者進行分協(xié)商
進入本地倉庫訪問位置之后執(zhí)行命令
1) 遠程倉庫相關(guān)命令
檢出倉庫:$ git clone git://github.com/jquery/jquery.git
查看遠程倉庫:$ git remote -v
添加遠程倉庫:$ git remote add [name] [url]
刪除遠程倉庫:$ git remote rm [name]
修改遠程倉庫:$ git remote set-url --push[name][newUrl]
拉取遠程倉庫:$ git pull [remoteName] [localBranchName]
推送遠程倉庫:$ git push [remoteName] [localBranchName]
2)分支(branch)操作相關(guān)命令
查看本地分支:$ git branch
查看遠程分支:$ git branch -r
創(chuàng)建本地分支:$ git branch [name] -注意新分支創(chuàng)建后不會自動切換為當(dāng)前分支
切換分支:$ git checkout [name]
創(chuàng)建新分支并立即切換到新分支:$ git checkout -b [name]
刪除分支:$ git branch -d [name] - -d選項只能刪除已經(jīng)參與了合并的分支荠雕,對于未有合并的分支是無法刪除的稳其。如果想強制刪除一個分支驶赏,可以使用-D選項
合并分支:$ git merge [name] -將名稱為[name]的分支與當(dāng)前分支合并
創(chuàng)建遠程分支(本地分支push到遠程):$ git push origin [name]
刪除遠程分支:$ git push origin :heads/[name]
3)版本(tag)操作相關(guān)命令
查看版本:$ git tag
創(chuàng)建版本:$ git tag [name]
刪除版本:$ git tag -d [name]
查看遠程版本:$ git tag -r
創(chuàng)建遠程版本(本地版本push到遠程):$ git push origin [name]
刪除遠程版本:$ git push origin :refs/tags/[name]
4) 子模塊(submodule)相關(guān)操作命令
添加子模塊:$ git submodule add [url] [path]
如:$ git submodule add git://github.com/soberh/ui-libs.git src/main/webapp/ui-libs
初始化子模塊:$ git submodule init -只在首次檢出倉庫時運行一次就行
更新子模塊:$ git submodule update -每次更新或切換分支后都需要運行一下
刪除子模塊:(分4步走哦)
1)$ git rm --cached [path]
2) 編輯“.gitmodules”文件,將子模塊的相關(guān)配置節(jié)點刪除掉
3) 編輯“.git/config”文件既鞠,將子模塊的相關(guān)配置節(jié)點刪除掉
4) 手動刪除子模塊殘留的目錄