git提交到github遠(yuǎn)程分支

下面我把完整的提交過程和遇到的問題描述一下,并附上相關(guān)的解決方案

場景

給一個正在開發(fā)的項(xiàng)目添加新功能,該項(xiàng)目代碼放在github上面,我被添加為了該項(xiàng)目名為dev分支的合作者和敬,可以向上面push代碼,現(xiàn)在我已經(jīng)開發(fā)完了該功能细办,需要提交到遠(yuǎn)程分支了,整個過程使用git做了如下操作

安裝和clone

首先安裝好git然后到目錄下面蕾殴,以windows系統(tǒng)的D:\為例笑撞,從代碼庫clone下來,打開git bash

cd d:
git clone https://github.com/guanpengchn/demo.git

然后將demo.zip壓縮包解壓出來区宇,這個時候工程就在D:\demo下面

進(jìn)行開發(fā)

然后對下載下來的代碼進(jìn)行開發(fā)和更改娃殖,修改完成值戳,就到了下面比較關(guān)鍵的步驟了

提交本地倉庫

在提交遠(yuǎn)程倉庫之前议谷,要先在本地倉庫提交,首先要確定clone下來的工程里有沒有.git文件堕虹,如果沒有的話那么需要自己初始化(理論上應(yīng)該沒有)卧晓,使用如下代碼:

$ git init

如果有的話則可以跳過芬首,然后把修改提交至本地倉庫

$ git add .
$ git commit -m '修改主頁'

提交遠(yuǎn)程倉庫

提交遠(yuǎn)程倉庫之前需要關(guān)聯(lián)遠(yuǎn)程倉庫

$ git remote add origin https://github.com/guanpengchn/demo.git

其實(shí)這句代碼的含義就是相當(dāng)于給origin鍵加了一個https://github.com/guanpengchn/demo.git,其實(shí)就是一個鍵值對逼裆,可以通過如下指令查看

$ git remote -v
origin  https://github.com/guanpengchn/demo.git (fetch)
origin  https://github.com/guanpengchn/demo.git (push)

關(guān)聯(lián)之后就可以提交了郁稍,由于我在本地的是主分支,所以也就是master分支胜宇,而遠(yuǎn)程我關(guān)聯(lián)的是dev分支耀怜,所以提交的時候要寫成如下格式

$ git push origin master:dev

如果倉庫里的代碼沒有被修改過,那么這個時候就成功了

同步倉庫再提交

但是如果遠(yuǎn)程分支被其他人提交修改了桐愉,我這里的代碼和他人不同步财破,就會報(bào)錯,所以這個時候要做同步工作从诲,使用如下指令

$ git pull --rebase origin dev
warning: no common commits
remote: Counting objects: 4365, done.
remote: Compressing objects: 100% (242/242), done.
remote: Total 4365 (delta 221), reused 299 (delta 143), pack-reused 3967
Receiving objects: 100% (4365/4365), 22.13 MiB | 584.00 KiB/s, done.
Resolving deltas: 100% (2571/2571), done.
From https://github.com/guanpengchn/demo
 * branch            dev        -> FETCH_HEAD
 * [new branch]      dev        -> origin/dev
First, rewinding head to replay your work on top of it...
Applying: 修改主頁
.git/rebase-apply/patch:2753: trailing whitespace.
                position:relative;
.git/rebase-apply/patch:5715: trailing whitespace.

.git/rebase-apply/patch:5740: trailing whitespace.

.git/rebase-apply/patch:5770: trailing whitespace.
            }
.git/rebase-apply/patch:5772: trailing whitespace.

warning: squelched 79 whitespace errors
warning: 84 lines add whitespace errors.
error: Failed to merge in the changes.
Using index info to reconstruct a base tree...
Falling back to patching base and 3-way merge...
Auto-merging server/config.js
CONFLICT (add/add): Merge conflict in server/config.js
Auto-merging client/home/assets/teaching/bg4.jpg
CONFLICT (add/add): Merge conflict in client/common/components/Navbar.js
Patch failed at 0001 修改主頁
The copy of the patch that failed is found in: .git/rebase-apply/patch

When you have resolved this problem, run "git rebase --continue".
If you prefer to skip this patch, run "git rebase --skip" instead.
To check out the original branch and stop rebasing, run "git rebase --abort".

相當(dāng)于把遠(yuǎn)程github上的項(xiàng)目的dev分支的代碼拉到了本地和我改好的代碼合并左痢,會出現(xiàn)上面的信息,其中有一些信息是我們需要關(guān)注的系洛,也就是

Auto-merging server/config.js
CONFLICT (add/add): Merge conflict in server/config.js
Auto-merging client/home/assets/teaching/bg4.jpg
CONFLICT (add/add): Merge conflict in client/common/components/Navbar.js

其中
server/config.js
client/home/assets/teaching/bg4.jpg
client/common/components/Navbar.js
是工程中的文件俊性,上面的翻譯過來也就是說,在pull過程中做了自動合并描扯,但是發(fā)生了沖突定页,需要我們手動去解決,然后就把這些文件打開去查看沖突的位置绽诚,都已經(jīng)被git標(biāo)好了拯勉,留下需要的代碼即可

解決之后執(zhí)行

$ git rebase --continue
client/common/components/Navbar.js: needs merge
client/home/assets/teaching/bg4.jpg: needs merge
server/config.js: needs merge
You must edit all merge conflicts and then
mark them as resolved using git add

根據(jù)提示,之后執(zhí)行

git add .

然后在執(zhí)行

$ git rebase --continue
Applying: 修改主頁

這個時候發(fā)現(xiàn)pull操作之后的沖突已經(jīng)都解決完了

然后再執(zhí)行

$ git push origin master:dev
Counting objects: 42, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (41/41), done.
Writing objects: 100% (42/42), 1.27 MiB | 282.00 KiB/s, done.
Total 42 (delta 13), reused 0 (delta 0)
remote: Resolving deltas: 100% (13/13), completed with 6 local objects.
To https://github.com/guanpengchn/demo.git
   171b4ce..cec6ccf  master -> dev

這個時候就真正的將代碼提交到了github的遠(yuǎn)程分支dev上憔购,打開github切換分支查看提交就可以看到記錄了

這里寫圖片描述
這里寫圖片描述
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末宫峦,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子玫鸟,更是在濱河造成了極大的恐慌导绷,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,454評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件屎飘,死亡現(xiàn)場離奇詭異妥曲,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)钦购,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評論 3 385
  • 文/潘曉璐 我一進(jìn)店門檐盟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人押桃,你說我怎么就攤上這事葵萎。” “怎么了?”我有些...
    開封第一講書人閱讀 157,921評論 0 348
  • 文/不壞的土叔 我叫張陵羡忘,是天一觀的道長谎痢。 經(jīng)常有香客問我,道長卷雕,這世上最難降的妖魔是什么节猿? 我笑而不...
    開封第一講書人閱讀 56,648評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮漫雕,結(jié)果婚禮上滨嘱,老公的妹妹穿的比我還像新娘。我一直安慰自己浸间,他們只是感情好九孩,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,770評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著发框,像睡著了一般躺彬。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上梅惯,一...
    開封第一講書人閱讀 49,950評論 1 291
  • 那天宪拥,我揣著相機(jī)與錄音,去河邊找鬼铣减。 笑死她君,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的葫哗。 我是一名探鬼主播缔刹,決...
    沈念sama閱讀 39,090評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼劣针!你這毒婦竟也來了校镐?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,817評論 0 268
  • 序言:老撾萬榮一對情侶失蹤捺典,失蹤者是張志新(化名)和其女友劉穎鸟廓,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體襟己,經(jīng)...
    沈念sama閱讀 44,275評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡引谜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,592評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了擎浴。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片员咽。...
    茶點(diǎn)故事閱讀 38,724評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖贮预,靈堂內(nèi)的尸體忽然破棺而出贝室,到底是詐尸還是另有隱情契讲,我是刑警寧澤,帶...
    沈念sama閱讀 34,409評論 4 333
  • 正文 年R本政府宣布档玻,位于F島的核電站,受9級特大地震影響茫藏,放射性物質(zhì)發(fā)生泄漏误趴。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,052評論 3 316
  • 文/蒙蒙 一务傲、第九天 我趴在偏房一處隱蔽的房頂上張望凉当。 院中可真熱鬧,春花似錦售葡、人聲如沸看杭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽楼雹。三九已至,卻和暖如春尖阔,著一層夾襖步出監(jiān)牢的瞬間贮缅,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評論 1 266
  • 我被黑心中介騙來泰國打工介却, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留谴供,地道東北人。 一個月前我還...
    沈念sama閱讀 46,503評論 2 361
  • 正文 我出身青樓齿坷,卻偏偏與公主長得像桂肌,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子永淌,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,627評論 2 350

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

  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,645評論 9 163
  • 大雨一落天下白 瞬間撒下萬里豆 待到秋高氣爽時 再來珠海簞壺漿崎场。
    朱克閱讀 241評論 5 1
  • 在這以夢為馬的年紀(jì) 我也曾住在風(fēng)里 不時的看看云 也看看你 時間,來自未來的黑洞 承諾遂蛀,恰似抽象的北風(fēng) 三月的風(fēng)照雁,...
    言少卿閱讀 381評論 0 2
  • 時間:2016 - 5 - 21 書籍:《這樣讀書就夠了》 趙周 頁碼:P 159 - P 184 文摘: 總結(jié):...
    浸泡一種心情閱讀 184評論 0 1
  • 如果,如果 如果你的淚是天空的傾訴 那我又會在哪里聆聽你的苦痛 愛答恶,分了兩邊 分在地平線 聽不到你心跳的那邊 如果...
    dr了墨閱讀 301評論 1 6