色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SVN與Git的最主要的區(qū)別?在windows上如何安裝Git?

RTThread物聯(lián)網(wǎng)操作系統(tǒng) ? 來源:lq ? 2019-01-24 16:54 ? 次閱讀

導(dǎo)讀:因?yàn)?a href="http://www.1cnz.cn/v/" target="_blank">教程詳細(xì),所以行文有些長,新手邊看邊操作效果出乎你的預(yù)料。GitHub雖然有些許改版,但并無大礙。

一、Git是什么?Git是目前世界上最先進(jìn)的分布式版本控制系統(tǒng)工作原理 / 流程:

Workspace:工作區(qū)

Index / Stage:暫存區(qū)

Repository:倉庫區(qū)(或本地倉庫)

Remote:遠(yuǎn)程倉庫

二、SVN與Git的最主要的區(qū)別?

SVN是集中式版本控制系統(tǒng),版本庫是集中放在中央服務(wù)器的,而干活的時(shí)候,用的都是自己的電腦,所以首先要從中央服務(wù)器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服務(wù)器。集中式版本控制系統(tǒng)是必須聯(lián)網(wǎng)才能工作,如果在局域網(wǎng)還可以,帶寬夠大,速度夠快,如果在互聯(lián)網(wǎng)下,如果網(wǎng)速慢的話,就納悶了。

Git是分布式版本控制系統(tǒng),那么它就沒有中央服務(wù)器的,每個(gè)人的電腦就是一個(gè)完整的版本庫,這樣,工作的時(shí)候就不需要聯(lián)網(wǎng)了,因?yàn)榘姹径际窃谧约旱碾娔X上。既然每個(gè)人的電腦都有一個(gè)完整的版本庫,那多個(gè)人如何協(xié)作呢?比如說自己在電腦上改了文件A,其他人也在電腦上改了文件A,這時(shí),你們兩之間只需把各自的修改推送給對方,就可以互相看到對方的修改了。

三、在windows上如何安裝Git?

msysgit是 windows版的Git,如下:

需要從網(wǎng)上下載一個(gè),然后進(jìn)行默認(rèn)安裝即可。安裝完成后,在開始菜單里面找到 "Git --> Git Bash",如下:

會(huì)彈出一個(gè)類似的命令窗口的東西,就說明Git安裝成功。如下:

安裝完成后,還需要最后一步設(shè)置,在命令行輸入如下:

因?yàn)镚it是分布式版本控制系統(tǒng),所以需要填寫用戶名和郵箱作為一個(gè)標(biāo)識。

注意:git config --global 參數(shù),有了這個(gè)參數(shù),表示你這臺機(jī)器上所有的Git倉庫都會(huì)使用這個(gè)配置,當(dāng)然你也可以對某個(gè)倉庫指定的不同的用戶名和郵箱。

四、如何操作?

1. 創(chuàng)建版本庫。

什么是版本庫?版本庫又名倉庫,英文名repository,你可以簡單的理解一個(gè)目錄,這個(gè)目錄里面的所有文件都可以被Git管理起來,每個(gè)文件的修改,刪除,Git都能跟蹤,以便任何時(shí)刻都可以追蹤歷史,或者在將來某個(gè)時(shí)刻還可以將文件”還原”。

所以創(chuàng)建一個(gè)版本庫也非常簡單,如下我是D盤 –> www下 目錄下新建一個(gè)testgit版本庫。

pwd 命令是用于顯示當(dāng)前的目錄。

通過命令 git init 把這個(gè)目錄變成git可以管理的倉庫,如下:

這時(shí)候你當(dāng)前testgit目錄下會(huì)多了一個(gè).git的目錄,這個(gè)目錄是Git來跟蹤管理版本的,沒事千萬不要手動(dòng)亂改這個(gè)目錄里面的文件,否則,會(huì)把git倉庫給破壞了。如下:

下面先看下demo如下演示:

我在版本庫testgit目錄下新建一個(gè)記事本文件 readme.txt 內(nèi)容如下:11111111

第一步:使用命令 git add readme.txt添加到暫存區(qū)里面去。如下:

如果和上面一樣,沒有任何提示,說明已經(jīng)添加成功了。

第二步:用命令 git commit告訴Git,把文件提交到倉庫。

現(xiàn)在我們已經(jīng)提交了一個(gè)readme.txt文件了,我們下面可以通過命令git status來查看是否還有文件未提交,如下:

說明沒有任何文件未提交,但是我現(xiàn)在繼續(xù)來改下readme.txt內(nèi)容,比如我在下面添加一行2222222222內(nèi)容,繼續(xù)使用git status來查看下結(jié)果,如下:

上面的命令告訴我們 readme.txt文件已被修改,但是未被提交的修改。

把文件添加到版本庫中。

首先要明確下,所有的版本控制系統(tǒng),只能跟蹤文本文件的改動(dòng),比如txt文件,網(wǎng)頁,所有程序的代碼等,Git也不列外,版本控制系統(tǒng)可以告訴你每次的改動(dòng),但是圖片,視頻這些二進(jìn)制文件,雖能也能由版本控制系統(tǒng)管理,但沒法跟蹤文件的變化,只能把二進(jìn)制文件每次改動(dòng)串起來,也就是知道圖片從1kb變成2kb,但是到底改了啥,版本控制也不知道。

接下來我想看下readme.txt文件到底改了什么內(nèi)容,如何查看呢?可以使用如下命令:

git diff readme.txt 如下:

如上可以看到,readme.txt文件內(nèi)容從一行11111111改成 二行 添加了一行22222222內(nèi)容。

知道了對readme.txt文件做了什么修改后,我們可以放心的提交到倉庫了,提交修改和提交文件是一樣的2步(第一步是git add 第二步是:git commit)。

如下:

2. 版本回退:如上,我們已經(jīng)學(xué)會(huì)了修改文件,現(xiàn)在我繼續(xù)對readme.txt文件進(jìn)行修改,再增加一行

內(nèi)容為33333333333333.繼續(xù)執(zhí)行命令如下:

現(xiàn)在我已經(jīng)對readme.txt文件做了三次修改了,那么我現(xiàn)在想查看下歷史記錄,如何查呢?我們現(xiàn)在可以使用命令 git log 演示如下所示:

git log命令顯示從最近到最遠(yuǎn)的顯示日志,我們可以看到最近三次提交,最近的一次是,增加內(nèi)容為333333.上一次是添加內(nèi)容222222,第一次默認(rèn)是 111111.如果嫌上面顯示的信息太多的話,我們可以使用命令 git log –pretty=oneline 演示如下:

現(xiàn)在我想使用版本回退操作,我想把當(dāng)前的版本回退到上一個(gè)版本,要使用什么命令呢?可以使用如下2種命令,第一種是:git reset --hard HEAD^ 那么如果要回退到上上個(gè)版本只需把HEAD^ 改成 HEAD^^ 以此類推。那如果要回退到前100個(gè)版本的話,使用上面的方法肯定不方便,我們可以使用下面的簡便命令操作:git reset --hard HEAD~100 即可。未回退之前的readme.txt內(nèi)容如下:

如果想回退到上一個(gè)版本的命令如下操作:

再來查看下 readme.txt內(nèi)容如下:通過命令cat readme.txt查看

可以看到,內(nèi)容已經(jīng)回退到上一個(gè)版本了。我們可以繼續(xù)使用git log 來查看下歷史記錄信息,如下:

我們看到 增加333333 內(nèi)容我們沒有看到了,但是現(xiàn)在我想回退到最新的版本,如:有333333的內(nèi)容要如何恢復(fù)呢?我們可以通過版本號回退,使用命令方法如下:

git reset --hard 版本號 ,但是現(xiàn)在的問題假如我已經(jīng)關(guān)掉過一次命令行或者333內(nèi)容的版本號我并不知道呢?要如何知道增加3333內(nèi)容的版本號呢?可以通過如下命令即可獲取到版本號:git reflog 演示如下:

通過上面的顯示我們可以知道,增加內(nèi)容3333的版本號是 6fcfc89.我們現(xiàn)在可以命令

git reset --hard 6fcfc89來恢復(fù)了。演示如下:

可以看到 目前已經(jīng)是最新的版本了。

3. 理解工作區(qū)與暫存區(qū)的區(qū)別?工作區(qū):就是你在電腦上看到的目錄,比如目錄下testgit里的文件(.git隱藏目錄版本庫除外)。或者以后需要再新建的目錄文件等等都屬于工作區(qū)范疇。版本庫(Repository):工作區(qū)有一個(gè)隱藏目錄.git,這個(gè)不屬于工作區(qū),這是版本庫。其中版本庫里面存了很多東西,其中最重要的就是stage(暫存區(qū)),還有Git為我們自動(dòng)創(chuàng)建了第一個(gè)分支master,以及指向master的一個(gè)指針HEAD。

我們前面說過使用Git提交文件到版本庫有兩步:

第一步:是使用 git add 把文件添加進(jìn)去,實(shí)際上就是把文件添加到暫存區(qū)。

第二步:使用git commit提交更改,實(shí)際上就是把暫存區(qū)的所有內(nèi)容提交到當(dāng)前分支上。

我們繼續(xù)使用demo來演示下:

我們在readme.txt再添加一行內(nèi)容為4444444,接著在目錄下新建一個(gè)文件為test.txt 內(nèi)容為test,我們先用命令 git status來查看下狀態(tài),如下:

現(xiàn)在我們先使用git add 命令把2個(gè)文件都添加到暫存區(qū)中,再使用git status來查看下狀態(tài),如下:

接著我們可以使用git commit一次性提交到分支上,如下:

4. Git撤銷修改和刪除文件操作。1. 撤銷修改:比如我現(xiàn)在在readme.txt文件里面增加一行 內(nèi)容為555555555555,我們先通過命令查看如下:

在我未提交之前,我發(fā)現(xiàn)添加5555555555555內(nèi)容有誤,所以我得馬上恢復(fù)以前的版本,現(xiàn)在我可以有如下幾種方法可以做修改:

第一:如果我知道要?jiǎng)h掉那些內(nèi)容的話,直接手動(dòng)更改去掉那些需要的文件,然后add添加到暫存區(qū),最后commit掉。

第二:我可以按以前的方法直接恢復(fù)到上一個(gè)版本。使用 git reset --hard HEAD^

但是現(xiàn)在我不想使用上面的2種方法,我想直接想使用撤銷命令該如何操作呢?首先在做撤銷之前,我們可以先用 git status 查看下當(dāng)前的狀態(tài)。如下所示:

可以發(fā)現(xiàn),Git會(huì)告訴你,git checkout -- file 可以丟棄工作區(qū)的修改,如下命令:git checkout -- readme.txt,如下所示:

命令 git checkout --readme.txt 意思就是,把readme.txt文件在工作區(qū)做的修改全部撤銷,這里有2種情況,如下:

1.readme.txt自動(dòng)修改后,還沒有放到暫存區(qū),使用 撤銷修改就回到和版本庫一模一樣的狀態(tài)。2.另外一種是readme.txt已經(jīng)放入暫存區(qū)了,接著又作了修改,撤銷修改就回到添加暫存區(qū)后的狀態(tài)。對于第二種情況,我想我們繼續(xù)做demo來看下,假如現(xiàn)在我對readme.txt添加一行 內(nèi)容為6666666666666,我git add 增加到暫存區(qū)后,接著添加內(nèi)容7777777,我想通過撤銷命令讓其回到暫存區(qū)后的狀態(tài)。如下所示:

注意:命令git checkout -- readme.txt 中的 -- 很重要,如果沒有 -- 的話,那么命令變成創(chuàng)建分支了。

2. 刪除文件。假如我現(xiàn)在版本庫testgit目錄添加一個(gè)文件b.txt,然后提交。如下:

如上:一般情況下,可以直接在文件目錄中把文件刪了,或者使用如上rm命令:rm b.txt ,如果我想徹底從版本庫中刪掉了此文件的話,可以再執(zhí)行commit命令 提交掉,現(xiàn)在目錄是這樣的,

只要沒有commit之前,如果我想在版本庫中恢復(fù)此文件如何操作呢?

可以使用如下命令 git checkout -- b.txt,如下所示:

再來看看我們testgit目錄,添加了3個(gè)文件了。如下所示:

五、遠(yuǎn)程倉庫在了解之前,先注冊github賬號,由于你的本地Git倉庫和github倉庫之間的傳輸是通過SSH加密的,所以需要一點(diǎn)設(shè)置:第一步:創(chuàng)建SSH Key。在用戶主目錄下,看看有沒有.ssh目錄,如果有,再看看這個(gè)目錄下有沒有id_rsa和id_rsa.pub這兩個(gè)文件,如果有的話,直接跳過此如下命令,如果沒有的話,打開命令行,輸入如下命令:

ssh-keygen -t rsa –C “youremail@example.com”, 由于我本地此前運(yùn)行過一次,所以本地有,如下所示:

id_rsa是私鑰,不能泄露出去,id_rsa.pub是公鑰,可以放心地告訴任何人。

第二步:登錄github,打開” settings”中的SSH Keys頁面,然后點(diǎn)擊“Add SSH Key”,填上任意title,在Key文本框里黏貼id_rsa.pub文件的內(nèi)容。

點(diǎn)擊 Add Key,你就應(yīng)該可以看到已經(jīng)添加的key。

1. 如何添加遠(yuǎn)程庫?現(xiàn)在的情景是:我們已經(jīng)在本地創(chuàng)建了一個(gè)Git倉庫后,又想在github創(chuàng)建一個(gè)Git倉庫,并且希望這兩個(gè)倉庫進(jìn)行遠(yuǎn)程同步,這樣github的倉庫可以作為備份,又可以其他人通過該倉庫來協(xié)作。

首先,登錄github上,然后在右上角找到“create a new repo”創(chuàng)建一個(gè)新的倉庫。如下:

在Repository name填入testgit,其他保持默認(rèn)設(shè)置,點(diǎn)擊“Create repository”按鈕,就成功地創(chuàng)建了一個(gè)新的Git倉庫:

目前,在GitHub上的這個(gè)testgit倉庫還是空的,GitHub告訴我們,可以從這個(gè)倉庫克隆出新的倉庫,也可以把一個(gè)已有的本地倉庫與之關(guān)聯(lián),然后,把本地倉庫的內(nèi)容推送到GitHub倉庫。

現(xiàn)在,我們根據(jù)GitHub的提示,在本地的testgit倉庫下運(yùn)行命令:

git remoteaddorigin https://github.com/tugenhua0707/testgit.git

所有的如下:

把本地庫的內(nèi)容推送到遠(yuǎn)程,使用 git push命令,實(shí)際上是把當(dāng)前分支master推送到遠(yuǎn)程。

由于遠(yuǎn)程庫是空的,我們第一次推送master分支時(shí),加上了 –u參數(shù),Git不但會(huì)把本地的master分支內(nèi)容推送的遠(yuǎn)程新的master分支,還會(huì)把本地的master分支和遠(yuǎn)程的master分支關(guān)聯(lián)起來,在以后的推送或者拉取時(shí)就可以簡化命令。推送成功后,可以立刻在github頁面中看到遠(yuǎn)程庫的內(nèi)容已經(jīng)和本地一模一樣了,上面的要輸入github的用戶名和密碼如下所示:

從現(xiàn)在起,只要本地作了提交,就可以通過如下命令:

gitpush origin master

把本地master分支的最新修改推送到github上了,現(xiàn)在你就擁有了真正的分布式版本庫了。

2. 如何從遠(yuǎn)程庫克隆?

上面我們了解了先有本地庫,后有遠(yuǎn)程庫時(shí)候,如何關(guān)聯(lián)遠(yuǎn)程庫。

現(xiàn)在我們想,假如遠(yuǎn)程庫有新的內(nèi)容了,我想克隆到本地來 如何克隆呢?

首先,登錄github,創(chuàng)建一個(gè)新的倉庫,名字叫testgit2.如下:

如下,我們看到:

現(xiàn)在,遠(yuǎn)程庫已經(jīng)準(zhǔn)備好了,下一步是使用命令git clone克隆一個(gè)本地庫了。如下所示:

接著在我本地目錄下 生成testgit2目錄了,如下所示:

六、創(chuàng)建與合并分支

在 版本回填退里,你已經(jīng)知道,每次提交,Git都把它們串成一條時(shí)間線,這條時(shí)間線就是一個(gè)分支。截止到目前,只有一條時(shí)間線,在Git里,這個(gè)分支叫主分支,即master分支。HEAD嚴(yán)格來說不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是當(dāng)前分支。

首先,我們來創(chuàng)建dev分支,然后切換到dev分支上。如下操作:

git checkout 命令加上 –b參數(shù)表示創(chuàng)建并切換,相當(dāng)于如下2條命令

gitbranch dev

gitcheckout dev

git branch查看分支,會(huì)列出所有的分支,當(dāng)前分支前面會(huì)添加一個(gè)星號。然后我們在dev分支上繼續(xù)做demo,比如我們現(xiàn)在在readme.txt再增加一行 7777777777777

首先我們先來查看下readme.txt內(nèi)容,接著添加內(nèi)容77777777,如下:

現(xiàn)在dev分支工作已完成,現(xiàn)在我們切換到主分支master上,繼續(xù)查看readme.txt內(nèi)容如下:

現(xiàn)在我們可以把dev分支上的內(nèi)容合并到分支master上了,可以在master分支上,使用如下命令 git merge dev 如下所示:

git merge命令用于合并指定分支到當(dāng)前分支上,合并后,再查看readme.txt內(nèi)容,可以看到,和dev分支最新提交的是完全一樣的。

注意到上面的Fast-forward信息,Git告訴我們,這次合并是“快進(jìn)模式”,也就是直接把master指向dev的當(dāng)前提交,所以合并速度非常快。

合并完成后,我們可以接著刪除dev分支了,操作如下:

總結(jié)創(chuàng)建與合并分支命令如下:

查看分支:git branch

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

切換分支:git checkout name

創(chuàng)建+切換分支:git checkout –b name

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

刪除分支:git branch –d name

如何解決沖突?下面我們還是一步一步來,先新建一個(gè)新分支,比如名字叫fenzhi1,在readme.txt添加一行內(nèi)容8888888,然后提交,如下所示:

同樣,我們現(xiàn)在切換到master分支上來,也在最后一行添加內(nèi)容,內(nèi)容為99999999,如下所示:

現(xiàn)在我們需要在master分支上來合并fenzhi1,如下操作:

Git用<<<<<<<,=======,>>>>>>>標(biāo)記出不同分支的內(nèi)容,其中<<>>>>fenzhi1 是指fenzhi1上修改的內(nèi)容,我們可以修改下如下后保存:

如果我想查看分支合并的情況的話,需要使用命令 git log.命令行演示如下:

3.分支管理策略。 通常合并分支時(shí),git一般使用”Fast forward”模式,在這種模式下,刪除分支后,會(huì)丟掉分支信息,現(xiàn)在我們來使用帶參數(shù) –no-ff來禁用”Fast forward”模式。首先我們來做demo演示下:

創(chuàng)建一個(gè)dev分支。

修改readme.txt內(nèi)容。

添加到暫存區(qū)。

切換回主分支(master)。

合并dev分支,使用命令 git merge –no-ff -m “注釋” dev

查看歷史記錄

截圖如下:

分支策略:首先master主分支應(yīng)該是非常穩(wěn)定的,也就是用來發(fā)布新版本,一般情況下不允許在上面干活,干活一般情況下在新建的dev分支上干活,干完后,比如上要發(fā)布,或者說dev分支代碼穩(wěn)定后可以合并到主分支master上來。

七、bug分支在開發(fā)中,會(huì)經(jīng)常碰到bug問題,那么有了bug就需要修復(fù),在Git中,分支是很強(qiáng)大的,每個(gè)bug都可以通過一個(gè)臨時(shí)分支來修復(fù),修復(fù)完成后,合并分支,然后將臨時(shí)的分支刪除掉。

比如我在開發(fā)中接到一個(gè)404 bug時(shí)候,我們可以創(chuàng)建一個(gè)404分支來修復(fù)它,但是,當(dāng)前的dev分支上的工作還沒有提交。比如如下:

并不是我不想提交,而是工作進(jìn)行到一半時(shí)候,我們還無法提交,比如我這個(gè)分支bug要2天完成,但是我issue-404 bug需要5個(gè)小時(shí)內(nèi)完成。怎么辦呢?還好,Git還提供了一個(gè)stash功能,可以把當(dāng)前工作現(xiàn)場 ”隱藏起來”,等以后恢復(fù)現(xiàn)場后繼續(xù)工作。如下:

所以現(xiàn)在我可以通過創(chuàng)建issue-404分支來修復(fù)bug了。

首先我們要確定在那個(gè)分支上修復(fù)bug,比如我現(xiàn)在是在主分支master上來修復(fù)的,現(xiàn)在我要在master分支上創(chuàng)建一個(gè)臨時(shí)分支,演示如下:

修復(fù)完成后,切換到master分支上,并完成合并,最后刪除issue-404分支。演示如下:

現(xiàn)在,我們回到dev分支上干活了。

工作區(qū)是干凈的,那么我們工作現(xiàn)場去哪里呢?我們可以使用命令 git stash list來查看下。如下:

工作現(xiàn)場還在,Git把stash內(nèi)容存在某個(gè)地方了,但是需要恢復(fù)一下,可以使用如下2個(gè)方法:

1.git stash apply恢復(fù),恢復(fù)后,stash內(nèi)容并不刪除,你需要使用命令git stash drop來刪除。2.另一種方式是使用git stash pop,恢復(fù)的同時(shí)把stash內(nèi)容也刪除了。演示如下

八、多人協(xié)作當(dāng)你從遠(yuǎn)程庫克隆時(shí)候,實(shí)際上Git自動(dòng)把本地的master分支和遠(yuǎn)程的master分支對應(yīng)起來了,并且遠(yuǎn)程庫的默認(rèn)名稱是origin。

要查看遠(yuǎn)程庫的信息 使用 git remote

要查看遠(yuǎn)程庫的詳細(xì)信息 使用 git remote –v

如下演示:

1. 推送分支:

推送分支就是把該分支上所有本地提交到遠(yuǎn)程庫中,推送時(shí),要指定本地分支,這樣,Git就會(huì)把該分支推送到遠(yuǎn)程庫對應(yīng)的遠(yuǎn)程分支上: 使用命令 git push origin master

比如我現(xiàn)在的github上的readme.txt代碼如下:

本地的readme.txt代碼如下:

現(xiàn)在我想把本地更新的readme.txt代碼推送到遠(yuǎn)程庫中,使用命令如下:

我們可以看到如上,推送成功,我們可以繼續(xù)來截圖github上的readme.txt內(nèi)容 如下:

可以看到 推送成功了,如果我們現(xiàn)在要推送到其他分支,比如dev分支上,我們還是那個(gè)命令 git push origin dev

那么一般情況下,那些分支要推送呢?

master分支是主分支,因此要時(shí)刻與遠(yuǎn)程同步。一些修復(fù)bug分支不需要推送到遠(yuǎn)程去,可以先合并到主分支上,然后把主分支master推送到遠(yuǎn)程去。2. 抓取分支:

多人協(xié)作時(shí),大家都會(huì)往master分支上推送各自的修改。現(xiàn)在我們可以模擬另外一個(gè)同事,可以在另一臺電腦上(注意要把SSH key添加到github上)或者同一臺電腦上另外一個(gè)目錄克隆,新建一個(gè)目錄名字叫testgit2

但是我首先要把dev分支也要推送到遠(yuǎn)程去,如下

接著進(jìn)入testgit2目錄,進(jìn)行克隆遠(yuǎn)程的庫到本地來,如下:

現(xiàn)在目錄下生成有如下所示:

現(xiàn)在我們的小伙伴要在dev分支上做開發(fā),就必須把遠(yuǎn)程的origin的dev分支到本地來,于是可以使用命令創(chuàng)建本地dev分支:

gitcheckout –b dev origin/dev

現(xiàn)在小伙伴們就可以在dev分支上做開發(fā)了,開發(fā)完成后把dev分支推送到遠(yuǎn)程庫時(shí)。

如下:

小伙伴們已經(jīng)向origin/dev分支上推送了提交,而我在我的目錄文件下也對同樣的文件同個(gè)地方作了修改,也試圖推送到遠(yuǎn)程庫時(shí),如下:

由上面可知:推送失敗,因?yàn)槲业男』锇樽钚绿峤坏暮臀以噲D推送的有沖突,解決的辦法也很簡單,上面已經(jīng)提示我們,先用git pull把最新的提交從origin/dev抓下來,然后在本地合并,解決沖突,再推送。

git pull也失敗了,原因是沒有指定本地dev分支與遠(yuǎn)程origin/dev分支的鏈接,根據(jù)提示,設(shè)置dev和origin/dev的鏈接:如下:

這回git pull成功,但是合并有沖突,需要手動(dòng)解決,解決的方法和分支管理中的 解決沖突完全一樣。解決后,提交,再push:我們可以先來看看readme.txt內(nèi)容了。

現(xiàn)在手動(dòng)已經(jīng)解決完了,我接在需要再提交,再push到遠(yuǎn)程庫里面去。如下所示:

因此:多人協(xié)作工作模式一般是這樣的:

首先,可以試圖用git push origin branch-name推送自己的修改.如果推送失敗,則因?yàn)檫h(yuǎn)程分支比你的本地更新早,需要先用git pull試圖合并。如果合并有沖突,則需要解決沖突,并在本地提交。再用git push origin branch-name推送。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 控制系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    6604

    瀏覽量

    110576
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9123

    瀏覽量

    85324
  • Git
    Git
    +關(guān)注

    關(guān)注

    0

    文章

    198

    瀏覽量

    15755

原文標(biāo)題:Git使用教程:最詳細(xì)、最傻瓜、最淺顯、真正手把手教!

文章出處:【微信號:RTThread,微信公眾號:RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    git命令的基本使用

    git config 第一次使用git或者剛安裝git時(shí),使用此命令設(shè)置身份Name 和 Eamail 地址。并且每次提交時(shí)會(huì)使用此信息。
    的頭像 發(fā)表于 12-11 13:53 ?907次閱讀

    為什么GitSVN拍在了沙灘上?精選資料分享

    GitSVN是大家都比較熟知的版本管理,近幾年Git越來越受到大家的喜歡。下面就來分享下關(guān)于GitSVN的內(nèi)容。
    發(fā)表于 07-20 06:49

    RT-Thread studio使用GIT進(jìn)行工程管理

    Git 一種,再此之前還有 SVN 和CSV,相對的,這兩者是集中式版本控制系統(tǒng)。分布式版本控制系統(tǒng)會(huì)在每臺部署了版本控制的電腦存儲(chǔ)完整的版本庫,而集中式版本控制系統(tǒng)則只會(huì)在一臺主機(jī)上保存版本庫
    發(fā)表于 09-19 17:05

    如何安裝Git并將Git添加到Windows系統(tǒng)環(huán)境變量

    CMD, Git CMD 的基礎(chǔ)增添一些新的命令與功能。所以建議使用的時(shí)候,用 Git Bash 更加方便。
    發(fā)表于 10-25 14:24

    SVN,HG,GIT命令對照

    SVN,HG,GIT是三種常見的版本控制系統(tǒng),本文簡單列出一些相似的操作命令。當(dāng)然,三種系統(tǒng)各有特點(diǎn),嚴(yán)格的對應(yīng)關(guān)系是沒有的。1,第一次下載,包括源碼和版本庫: svn checkout http
    發(fā)表于 01-13 16:53 ?0次下載

    Git是什么?Git的基本使用資料說明

      Git是什么? Git是目前世界最先進(jìn)的分布式版本控制系統(tǒng)(沒有之一)。
    發(fā)表于 05-29 17:56 ?1次下載
    <b class='flag-5'>Git</b>是什么?<b class='flag-5'>Git</b>的基本使用資料說明

    SVNGit最主要區(qū)別

    Git是目前世界最先進(jìn)的分布式版本控制系統(tǒng)。
    發(fā)表于 07-08 10:46 ?5425次閱讀

    Git實(shí)際工作中的基本使用方法

    代碼版本控制對于我們嵌入式軟件開發(fā)崗是一項(xiàng)基礎(chǔ)、必備的技能,需要熟練掌握。實(shí)際工作中常用的版本控制系統(tǒng)有:Git(分布式版本控制系統(tǒng))與SVN(集中式版本控制系統(tǒng))。 本次分享Git
    的頭像 發(fā)表于 09-14 18:12 ?2566次閱讀

    Git的參考手冊教程免費(fèi)下載

    使用Git前我們需要先安裝 GitGit 目前支持 Linux/Unix、Solaris、Mac和
    發(fā)表于 09-21 08:00 ?1次下載
    <b class='flag-5'>Git</b>的參考手冊教程免費(fèi)下載

    為什么說GitSVN拍在沙灘上了呢?

    不同的體驗(yàn)。 一、Git是分布式的,SVN是集中式的 這是 GitSVN 最大的區(qū)別。若能掌握這個(gè)概念,兩者
    的頭像 發(fā)表于 04-30 11:57 ?1487次閱讀
    為什么說<b class='flag-5'>Git</b>把<b class='flag-5'>SVN</b>拍在沙灘上了呢?

    SVNGit最主要區(qū)別

    人如何協(xié)作呢?比如說自己電腦改了文件A,其他人也電腦改了文件A,這時(shí),你們兩之間只需把各自的修改推送給對方,就可以互相看到對方的修改了。
    的頭像 發(fā)表于 11-01 10:25 ?1347次閱讀

    如何下載與安裝Git

    msysGit 平臺上也提供了最新的Git安裝包,可以到 GitHub 的頁面上下載 exe 安裝文件并運(yùn)行
    的頭像 發(fā)表于 02-10 11:19 ?6455次閱讀
    如何下載與<b class='flag-5'>安裝</b><b class='flag-5'>Git</b>

    如何設(shè)置Git的SSH秘鑰

    Git之后,感覺GitSvn好用多了,Svn大的代碼情況下,那下載和上傳的速度懂的人都懂啊!下面記錄一下使用ssh秘鑰鏈接本地與遠(yuǎn)程代碼
    的頭像 發(fā)表于 02-10 11:30 ?1876次閱讀
    如何設(shè)置<b class='flag-5'>Git</b>的SSH秘鑰

    git rebase和git merge的區(qū)別

    ? 解決沖突 git rebase和git merge的區(qū)別 分支合并 git merge是用來合并兩個(gè)分支的。 比如:將 b 分支合并到當(dāng)前分支。 同樣
    的頭像 發(fā)表于 07-05 09:54 ?638次閱讀
    <b class='flag-5'>git</b> rebase和<b class='flag-5'>git</b> merge的<b class='flag-5'>區(qū)別</b>

    Git是什么 Git介紹

    git 是什么? Git 誕生于 2005 年,是一款免費(fèi)、開源、分布式版本控制系統(tǒng)。 直接記錄快照,而非差異比較 Git 和其它版本控制系統(tǒng)的主要差別在于
    的頭像 發(fā)表于 07-22 10:50 ?1784次閱讀
    <b class='flag-5'>Git</b>是什么 <b class='flag-5'>Git</b>介紹
    主站蜘蛛池模板: beeg xxx日本老师| 侮辱丰满美丽的人妻| 大胸美女被吊起来解开胸罩| 日本午夜视频在线| 6080yy亚洲久久无码| 日本视频一区二区免费观看| 国产成人在线观看网站| 亚洲天码中字| 内射白浆一区二区在线观看| 电影果冻传媒在线播放| 亚洲aaaa级特黄毛片| 久久91精品国产91久| xxxx俄罗斯1819| 午夜看片a福利在线观看| 久久是热这里只有精品| FREEXXX性乌克兰XXX| 武侠古典久久亚洲精品| 久久两性视频| chinese国语露脸videos| 我与恶魔的h生活ova| 国产午夜福利片| 99国产在线精品视频| 色内射无码AV| 久久免费国产| 超碰免费视频部落格| 野花社区视频WWW高清| 女教师の诱惑| 国产一区二区三区在线看片| 1819sextub欧美中国| 婷婷五月久久精品国产亚洲| 久久九九青青国产精品| 51久久成人国产精品麻豆| 日本无修肉动漫在线观看| 国产亚洲一区二区三区啪| 9477小游戏| 午夜精品久久久内射近拍高清| 空姐厕所啪啪啪| 动漫在线观看免费肉肉| 伊人久久伊人| 欧美在线激情| 精品国产原创在线观看视频|