GIT使用之GitHub托管代碼-創(chuàng)新互聯(lián)

1,在GitHub上創(chuàng)建一個(gè)項(xiàng)目的倉庫

1)首先要注冊(cè)GitHub賬號(hào)并登陸,然后開始創(chuàng)建倉庫
GIT使用之GitHub托管代碼

創(chuàng)新互聯(lián)專注于淅川網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供淅川營(yíng)銷型網(wǎng)站建設(shè),淅川網(wǎng)站制作、淅川網(wǎng)頁設(shè)計(jì)、淅川網(wǎng)站官網(wǎng)定制、小程序開發(fā)服務(wù),打造淅川網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供淅川網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

2)填寫項(xiàng)目信息:
GIT使用之GitHub托管代碼
3)創(chuàng)建完成:
GIT使用之GitHub托管代碼

到此為止,GitHub上的倉庫地址為:https://github.com/dengshuangfu/github-demo.git

2,創(chuàng)建本地倉庫

1)使用Maven創(chuàng)建工程

mvn archetype:generate -DgroupId=com.dsf.demo -DartifactId=github-demo -DarchetypeArtifactId=maven-archetype-quickstart -Dversion=1.0 -DinteractiveMode=false

2)初始化git倉庫
切換到根路徑(pmo.xml所在路徑),執(zhí)行以下命令初始化git倉庫

git init

GIT使用之GitHub托管代碼

3)使用倉庫管理文件

git status

GIT使用之GitHub托管代碼
提示有沒被跟蹤的文件,我們通過以下指令將文件添加到暫存區(qū)中

git add .

然后通過以下指令將文件提交到倉庫

git commit -m 'initial commit'

GIT使用之GitHub托管代碼
查看git倉庫分支情況

gitk --all

此時(shí)會(huì)彈出一個(gè)可視化窗口
GIT使用之GitHub托管代碼
可見當(dāng)前只有一次提交

接著我們?cè)趓esources下面創(chuàng)建application.yml文件,然后提交到倉庫,再執(zhí)行g(shù)itk命令
GIT使用之GitHub托管代碼

3,將本地倉庫推送到GitHub上

1)添加遠(yuǎn)程倉庫地址

git remote add origin https://github.com/dengshuangfu/github-demo.git

2)本地與遠(yuǎn)程的master關(guān)聯(lián)并推送到遠(yuǎn)程倉庫的master上

git push -u origin master

報(bào)錯(cuò)提示如下

To https://github.com/dengshuangfu/github-demo.git
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'https://github.com/dengshuangfu/github-demo.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

GIT使用之GitHub托管代碼
這個(gè)報(bào)錯(cuò)的原因是因?yàn)檫h(yuǎn)程分支上存在本地分支中不存在的提交,因?yàn)樵谶h(yuǎn)程倉庫中當(dāng)前存在".gitignore"和"README.md"文件,所以我們需要先抓取并合并遠(yuǎn)程倉庫全部?jī)?nèi)容(git pull origin master --allow-unrelated-histories),再推送本地倉庫數(shù)據(jù)(git push origin master)。
GIT使用之GitHub托管代碼
推送
GIT使用之GitHub托管代碼

到此,GitHub就已經(jīng)有我們推送的倉庫內(nèi)容了
GIT使用之GitHub托管代碼

我們?cè)偻ㄟ^gitk命令來查看分支情況如下
GIT使用之GitHub托管代碼

注意:當(dāng)設(shè)置以下配置后push時(shí)的區(qū)別

git config --global push.default matching
or
git config --global push.default simple      [默認(rèn)]

matching:git將推送本地分支到已存在同名的遠(yuǎn)程分支。
simple:只將當(dāng)前分支推送到相應(yīng)的遠(yuǎn)程分支。

4,附Git push指令解析

git push的一般形式為 git push <遠(yuǎn)程主機(jī)名> <本地分支名> <遠(yuǎn)程分支名> .
例如 git push origin master:refs/for/master ,即是將本地的master分支推送到遠(yuǎn)程主機(jī)origin上的對(duì)應(yīng)master分支, origin 是遠(yuǎn)程主機(jī)名, 第一個(gè)master是本地分支名,第二個(gè)master是遠(yuǎn)程分支名。

1)git push origin master
如果遠(yuǎn)程分支被省略,如上則表示將本地分支推送到與之存在追蹤關(guān)系的遠(yuǎn)程分支(通常兩者同名),如果該遠(yuǎn)程分支不存在,則會(huì)被新建

2)git push origin :refs/for/master
如果省略本地分支名,則表示刪除指定的遠(yuǎn)程分支,因?yàn)檫@等同于推送一個(gè)空的本地分支到遠(yuǎn)程分支,等同于 git push origin --delete master

3)git push origin
如果當(dāng)前分支與遠(yuǎn)程分支存在追蹤關(guān)系,則本地分支和遠(yuǎn)程分支都可以省略,將當(dāng)前分支推送到origin主機(jī)的對(duì)應(yīng)分支

4)git push
如果當(dāng)前分支只有一個(gè)遠(yuǎn)程分支,那么主機(jī)名都可以省略,形如 git push,可以使用git branch -r ,查看遠(yuǎn)程的分支名

5)git push 的其他命令

  • git push -u origin master 如果當(dāng)前分支與多個(gè)主機(jī)存在追蹤關(guān)系,則可以使用 -u 參數(shù)指定一個(gè)默認(rèn)主機(jī),這樣后面就可以不加任何參數(shù)使用git push,不帶任何參數(shù)的git push,默認(rèn)只推送當(dāng)前分支,這叫做simple方式,還有一種matching方式,會(huì)推送所有有對(duì)應(yīng)的遠(yuǎn)程分支的本地分支, Git 2.0之前默認(rèn)使用matching,現(xiàn)在改為simple方式。如果想更改設(shè)置,可以使用git config命令。git config --global push.default matching OR git config --global push.default simple;可以使用git config -l 查看配置
  • git push --all origin 當(dāng)遇到這種情況就是不管是否存在對(duì)應(yīng)的遠(yuǎn)程分支,將本地的所有分支都推送到遠(yuǎn)程主機(jī),這時(shí)需要 -all 選項(xiàng)
  • git push --force origin git push的時(shí)候需要本地先git pull更新到跟服務(wù)器版本一致,如果本地版本庫比遠(yuǎn)程服務(wù)器上的低,那么一般會(huì)提示你git pull更新,如果一定要提交,那么可以使用這個(gè)命令。
  • git push origin --tags //git push 的時(shí)候不會(huì)推送分支,如果一定要推送標(biāo)簽的話那么可以使用這個(gè)命令

6)關(guān)于 refs/for
// refs/for 的意義在于我們提交代碼到服務(wù)器之后是需要經(jīng)過code review 之后才能進(jìn)行merge的,而refs/heads 不需要

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

分享文章:GIT使用之GitHub托管代碼-創(chuàng)新互聯(lián)
網(wǎng)頁路徑:http://www.muchs.cn/article0/dsoiio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、虛擬主機(jī)、Google、企業(yè)網(wǎng)站制作動(dòng)態(tài)網(wǎng)站、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站