欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

目錄

柚子快報(bào)激活碼778899分享:Git/GitHub-學(xué)習(xí)記錄

柚子快報(bào)激活碼778899分享:Git/GitHub-學(xué)習(xí)記錄

http://yzkb.51969.com/

文章目錄

一、Git 概述1.1 Git 介紹1.2 Git 的特點(diǎn)

二、GitHub 概述2.1 GitHub 介紹2.2 GitHub 與 Git 區(qū)別

三、相關(guān)概念3.1 Git 倉(cāng)庫(kù)基礎(chǔ)概念3.2 origin3.3 master1. master 概念2. master、origin master 與 origin/master 的區(qū)別

3.4 branch1.Git 的分支是什么2.分支的新建與合并3.本地分支,遠(yuǎn)程分支和追蹤分支

3.5 branch types1. master 主分支2. feature 功能分支3. dev 開(kāi)發(fā)分支4. hot-fix 緊急修復(fù)分支

3.6 commit3.7 commit message types1.規(guī)范2.格式拆解 Header3. 格式拆解 Body4. 格式拆解 Footer

3.8 push3.9 pull3.10 merge

四、總結(jié)3.8 push3.9 pull3.10 merge

四、總結(jié)

一、Git 概述

1.1 Git 介紹

Git 是一個(gè)開(kāi)源的分布式版本控制系統(tǒng)(Distributed Version Control System,簡(jiǎn)稱 DVCS)。可以有效、高速地處理從很小到非常大的項(xiàng)目版本管理。

1.2 Git 的特點(diǎn)

快速、簡(jiǎn)單的設(shè)計(jì)對(duì)非線性開(kāi)發(fā)模式的強(qiáng)力支持(允許成千上萬(wàn)并行開(kāi)發(fā)的分支)完全分布式有能力高效管理類似 Linx 內(nèi)核一樣的超大規(guī)模項(xiàng)目(速度和數(shù)據(jù)量)協(xié)同開(kāi)發(fā)

二、GitHub 概述

2.1 GitHub 介紹

GitHub 是為開(kāi)發(fā)者提供 Git 倉(cāng)庫(kù)的托管服務(wù)這是一個(gè)讓開(kāi)發(fā)者與朋友、同事、同學(xué)及陌生人共享代碼的完美場(chǎng)所

2.2 GitHub 與 Git 區(qū)別

Git 和 GitHub 是兩個(gè)完全不同的概念!Git 是一個(gè)版本管理工具,開(kāi)發(fā)者將源代碼存入名叫“Git 倉(cāng)庫(kù)”的資料庫(kù)中并加以使用,由 Linus Torvalds 編寫(xiě)。GitHub 是在線的基于 Git 的代碼托管服務(wù),2008 年由 Ruby on Rails 編寫(xiě)而成。GitHub 除提供 Git 倉(cāng)庫(kù)的托管服務(wù)外,還為開(kāi)發(fā)者或團(tuán)隊(duì)提供了一系列功能,幫助其高效率、高品質(zhì)地進(jìn)行代碼編寫(xiě)。

三、相關(guān)概念

3.1 Git 倉(cāng)庫(kù)基礎(chǔ)概念

工作區(qū):存放代碼的地方暫存區(qū):臨時(shí)存儲(chǔ),將工作區(qū)的代碼讓 git 知道,通過(guò) git add 將代碼放到暫存區(qū)本地庫(kù):將暫存區(qū)的代碼提交到本地庫(kù),就會(huì)生成對(duì)應(yīng)的歷史版本,這個(gè)代碼就無(wú)法刪除遠(yuǎn)程庫(kù):將本地庫(kù)的代碼推送到遠(yuǎn)程庫(kù)

3.2 origin

你的代碼庫(kù)(repository)可以存放在你的電腦里,同時(shí)你也可以把代碼庫(kù)托管到 Github 的服務(wù)器上。在默認(rèn)情況下,origin 指向的就是你本地的代碼庫(kù)托管在 Github 上的版本

假設(shè) user1 首先在 GitHub 上創(chuàng)建了一個(gè) Repository,叫做 repository,GitHub ID 是 user1,這個(gè)時(shí)候指向代碼庫(kù)的鏈接是: https://github.com/user1/repository 如果在 terminal 里輸入: git clone https://github.com/user1/repository 那么 Git 就會(huì)克隆一份托管在 GitHub 上的代碼庫(kù)至本地,這時(shí),本地倉(cāng)庫(kù)和遠(yuǎn)程倉(cāng)庫(kù)建立連接,這個(gè)時(shí)候你 cd 到 repository 目錄,可以查看映射關(guān)系: $ git remote -v 結(jié)果如下:

`origin` https://github.com/user1/repository.git (fetch)

`origin` https://github.com/user1/repository.git (push)

總結(jié):git 默認(rèn)創(chuàng)建了一個(gè)指向遠(yuǎn)端代碼庫(kù)的標(biāo)識(shí) origin,沒(méi)有特殊意義,只是一個(gè)默認(rèn)的習(xí)慣,比如叫 zhangSan 也可以

3.3 master

1. master 概念

在初始化本地 Git 倉(cāng)庫(kù)時(shí),Git 已經(jīng)默認(rèn)幫我們創(chuàng)建了一個(gè)名字叫 master 主分支,通常我們把這個(gè) master 分支叫做主分支master 主分支的作用是:用來(lái)保存和記錄整個(gè)項(xiàng)目已經(jīng)完成的功能代碼

2. master、origin master 與 origin/master 的區(qū)別

master 這個(gè)很好理解,它代表本地的某個(gè)分支名,通常叫做主分支origin master 代表著兩個(gè)概念,前面的 origin 代表遠(yuǎn)程名,后面的 master 代表遠(yuǎn)程分支名origin/master 只代表一個(gè)概念,即遠(yuǎn)程分支名,是從遠(yuǎn)程拉取代碼后在本地建立的一份拷貝(因此也有人把它叫作本地分支)

以下例子更好說(shuō)明區(qū)別:

執(zhí)行 git fetch origin master 時(shí),它的意思是從名為 origin 的遠(yuǎn)程上拉取名為 master 的分支到本地分支 origin/master 中。既然是拉取代碼,當(dāng)然需要同時(shí)指定遠(yuǎn)程名與分支名,所以分開(kāi)寫(xiě)。

執(zhí)行 git merge origin/master 時(shí),它的意思是合并名為 origin/master 的分支到當(dāng)前所在分支。既然是分支的合并,當(dāng)然就與遠(yuǎn)程名沒(méi)有直接的關(guān)系,所以沒(méi)有出現(xiàn)遠(yuǎn)程名。需要指定的是被合并的分支。

執(zhí)行 git push origin master 時(shí),它的意思是推送本地的 master 分支到遠(yuǎn)程 origin,涉及到遠(yuǎn)程以及分支,當(dāng)然也得分開(kāi)寫(xiě)了

3.4 branch

1.Git 的分支是什么

顧名思義,分支就是從主線上分離出來(lái)進(jìn)行另外的操作,而又不影響主線,主線又可以繼續(xù)干它的事,是不是有點(diǎn)像線程,最后分支做完事后合并到主線上而分支的任務(wù)完成可以刪掉了。這樣是不是很方便,主線繼續(xù)做它的事,分支用來(lái)解決臨時(shí)需求,二者互不相干。git 的分支功能特別的強(qiáng)大,它不需要將所有數(shù)據(jù)進(jìn)行復(fù)制,只要重新創(chuàng)建一個(gè)分支的指針指向你需要從哪里開(kāi)始創(chuàng)建分支的提交對(duì)象(commit),然后進(jìn)行修改再提交,那么新分支的指針就會(huì)指向你最新提交的這個(gè) commit 對(duì)象,而原來(lái)分支的指針則指向你原來(lái)開(kāi)發(fā)的位置,當(dāng)你在哪個(gè)分支開(kāi)發(fā),HEAD 就指向那個(gè)分支的最新提交對(duì)象 commt。沒(méi)弄清楚沒(méi)關(guān)系,先有這么一個(gè)概念,后面慢慢就會(huì)弄清的。

2.分支的新建與合并

我們可以用命令 git branch 來(lái)查看我們的 git 倉(cāng)庫(kù)有幾個(gè)分支,而我們目前工作處于那個(gè)分支,前面有個(gè)*號(hào)的就為我們目前所處的分支。我們可以通過(guò)命令 git branch name 來(lái)創(chuàng)建分支,而這個(gè)分支的指針就指向最新的 commit 對(duì)象,也就和 HEAD 指向同一對(duì)象。我們可以通過(guò)命令 git checkout name 來(lái)切換到目的分支,我們默認(rèn)的主分支為 master。在分支的創(chuàng)建和切換,其實(shí)只是簡(jiǎn)單的創(chuàng)建指針找指針而已,而根據(jù)找到的指針找到所指向的 commit 對(duì)象,然后將工作空間恢復(fù)成該 commit 對(duì)象所指的文件快照讓我們來(lái)工作

3.本地分支,遠(yuǎn)程分支和追蹤分支

local branch 本地分支就是我們可以通過(guò) git branch 查看到的分支,也就是我們自己 git 倉(cāng)庫(kù)所擁有的分支,git 中默認(rèn)是 master 分支,我們都可以利用

remote branch 遠(yuǎn)程分支是對(duì)遠(yuǎn)程倉(cāng)庫(kù)的分支的索引,它其實(shí)也是本地分支,只是我們無(wú)法移動(dòng)它,必須要在和中心服務(wù)器交互根據(jù)服務(wù)器更新到本地來(lái)的代碼移動(dòng)的,遠(yuǎn)程分支的作用就是我們上次和中心服務(wù)器交互更新得到的最新版本,它也是個(gè)指針。

tracking branch 追蹤分支比較難理解,它也是一個(gè)本地分支,只是它對(duì)應(yīng)了一個(gè)遠(yuǎn)程分支,如果我們本地的某個(gè)分支對(duì)應(yīng)了一個(gè)特定的遠(yuǎn)程分支,那么它就是追蹤分支,比如我們最初的 master 分支就是一個(gè)追蹤分支,它對(duì)應(yīng)遠(yuǎn)程分支 origin/master,這里 origin 是遠(yuǎn)程倉(cāng)庫(kù)名,當(dāng)我們?cè)?master 分支里執(zhí)行更新(fetch,pull)或是推送(push),在不指定分支的情況下,默認(rèn)就是從 origin/master 分支更新來(lái)或者提交到 origin/mster 分支

3.5 branch types

分支類型Branch Typesmaster branch主分支feature branch功能分支dev branch開(kāi)發(fā)分支hot-fix branch緊急修復(fù)分支

1. master 主分支

master 主分支的作用是:用來(lái)保存和記錄整個(gè)項(xiàng)目已完成的功能代碼不允許程序員直接在 master 分支上修改代碼,因?yàn)檫@樣做的風(fēng)險(xiǎn)高,容易導(dǎo)致整個(gè)項(xiàng)目崩潰,因此我們需要在自己負(fù)責(zé)開(kāi)發(fā)的分支上進(jìn)行開(kāi)發(fā)

2. feature 功能分支

由于程序員不能直接在 master 分支上進(jìn)行功能的開(kāi)發(fā),所以就有了功能分支的概念功能分支指的是專門用來(lái)開(kāi)發(fā)新功能的分支,它是臨時(shí)從 master 主分支上分叉出來(lái)的,當(dāng)新功能開(kāi)發(fā)且測(cè)試完畢后,最終需要合并到 master 主分支上

3. dev 開(kāi)發(fā)分支

dev 分支是開(kāi)發(fā)分支,用于存儲(chǔ)正在開(kāi)發(fā)過(guò)程中的代碼。開(kāi)發(fā)人員在 dev 分支上進(jìn)行新功能的開(kāi)發(fā)、bug 修復(fù)等操作。

4. hot-fix 緊急修復(fù)分支

解決問(wèn)題,修復(fù) bug 的分支,解決之后合并到主分支上

3.6 commit

commit 就是把本地變化提交到本地倉(cāng)庫(kù)

3.7 commit message types

我們?cè)诿看翁峤淮a時(shí),都需要編寫(xiě) Commit Message,否則是不允許提交的。書(shū)寫(xiě)好的 Commit Message 能大大提高代碼維護(hù)的效率。避免開(kāi)發(fā)人員在項(xiàng)目中群魔亂舞,搞得代碼一團(tuán)糟,搞的項(xiàng)目就被糟踐了。且開(kāi)發(fā)日后的維護(hù),都將是災(zāi)難。

因此,編寫(xiě) Commit Message 需要遵循一定的范式,內(nèi)容應(yīng)該清晰明了,指明本次提交的目的,便于追蹤問(wèn)題。往往在日常開(kāi)發(fā)中由于缺少對(duì) Commit Message 的約束,導(dǎo)致填寫(xiě)內(nèi)容隨意,可讀性低亦難以維護(hù)

1.規(guī)范

Commit Message 的格式大致分為三個(gè)部分 (使用空行分割):

標(biāo)題行 Header:必填,描述主要修改類型和內(nèi)容主題內(nèi)容 Body:描述為什么修改,做了什么樣的修改,以及開(kāi)發(fā)的思路等等頁(yè)腳注釋 Footer:說(shuō)明 Breaking Changes(中斷更改) 或 Closed Issues(已解決的問(wèn)題)

Commit Message 提示說(shuō)明:

標(biāo)題行 類型(影響范圍):50個(gè)字符以內(nèi),描述主要變更內(nèi)容

空一行

主體內(nèi)容:更詳細(xì)的說(shuō)明文本,建議72個(gè)字符以內(nèi)。 需要描述的信息包括:

為什么這個(gè)變更是必須的? 它可能是用來(lái)修復(fù)一個(gè)bug,增加一個(gè)feature,提升性能、可靠性、穩(wěn)定性等等

他如何解決這個(gè)問(wèn)題? 具體描述解決問(wèn)題的步驟

是否存在副作用、是否會(huì)有風(fēng)險(xiǎn)?

空一行

尾部:是需要的化可以添加一個(gè)鏈接到issue地址或者其它文檔,或者是關(guān)閉了某個(gè)issue。

2.格式拆解 Header

Header 部分只有一行,包括三個(gè)字段:type(必需)、scope(可選)和 subject(必需)

type:

type描述feat新增 feature(功能)fix修復(fù) bugdocs僅僅修改了文檔,比如 README,CHANGELOG,CONTRIBUTE 等style修改了空格、格式縮進(jìn)、逗號(hào)等,不改變代碼邏輯refactor代碼重構(gòu),沒(méi)有加新功能或者修復(fù) bugperf優(yōu)化相關(guān),比如提升性能、體驗(yàn)test測(cè)試用例,包括單元用例、集成測(cè)試等chore改變構(gòu)建流程、或者增加依賴庫(kù)、工具等revert回滾到上一個(gè)版本

scop: scope 為選填項(xiàng),用于說(shuō)明 commit 影響的范圍,比如數(shù)據(jù)層、控制層、視圖層等等,視項(xiàng)目不同而不同,格式為項(xiàng)目名/模塊名。

如果你的修改影響了不止一個(gè) scope,你可以使用*代替。

例如:global、common、http、* 、數(shù)據(jù)庫(kù)等等,記得加上括號(hào)

subject: subject 是 commit 目的的簡(jiǎn)短描述,不超過(guò) 50 個(gè)字符

示例:

feat(*): 添加網(wǎng)站主頁(yè)靜態(tài)頁(yè)面

3. 格式拆解 Body

Body 填寫(xiě)詳細(xì)描述,主要描述改動(dòng)之前的情況及為什么修改,對(duì)于小的修改不作要求,但是重大需求、更新等必須添加 body 來(lái)作說(shuō),可以分成多行進(jìn)行詳細(xì)說(shuō)明。

填寫(xiě)要求:

要以動(dòng)詞開(kāi)頭,使用第一人稱現(xiàn)在時(shí),比如 change,而不是 changed 或 changes第一個(gè)字母小寫(xiě)結(jié)尾不加句號(hào)

4. 格式拆解 Footer

不兼容變動(dòng)(break changes)

break changes 指明是否產(chǎn)生了破壞性修改,涉及 break changes 的改動(dòng)必須指明該項(xiàng),類似版本升級(jí)、接口參數(shù)減少、接口刪除、遷移等。

關(guān)閉 Issue(affect issues)

affect issues 指明是否影響了某個(gè)問(wèn)題。例如使用項(xiàng)目管理系統(tǒng)的唯一 ID,在 commit message 中可以填寫(xiě)影響的 jira_id,若要開(kāi)啟該功能需要先打通 jira 與 gitlab。

3.8 push

push 用于將本地分支的更新,推送到遠(yuǎn)程主機(jī)

3.9 pull

將遠(yuǎn)程代碼倉(cāng)庫(kù)中(新)的內(nèi)容下載到本地,并更新本地代碼倉(cāng)庫(kù)的內(nèi)容

3.10 merge

merge 一般有以下兩種用途:

用于整合另一代碼倉(cāng)庫(kù)中的變化用于從一個(gè)分支到另一個(gè)分支的合并

四、總結(jié)

記錄自己的學(xué)習(xí)過(guò)程,溫故知新 a_id,若要開(kāi)啟該功能需要先打通 jira 與 gitlab。

3.8 push

push 用于將本地分支的更新,推送到遠(yuǎn)程主機(jī)

3.9 pull

將遠(yuǎn)程代碼倉(cāng)庫(kù)中(新)的內(nèi)容下載到本地,并更新本地代碼倉(cāng)庫(kù)的內(nèi)容

3.10 merge

merge 一般有以下兩種用途:

用于整合另一代碼倉(cāng)庫(kù)中的變化用于從一個(gè)分支到另一個(gè)分支的合并

四、總結(jié)

記錄自己的學(xué)習(xí)過(guò)程,溫故知新

柚子快報(bào)激活碼778899分享:Git/GitHub-學(xué)習(xí)記錄

http://yzkb.51969.com/

相關(guān)鏈接

評(píng)論可見(jiàn),查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。

轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/18904348.html

發(fā)布評(píng)論

您暫未設(shè)置收款碼

請(qǐng)?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問(wèn)

文章目錄