最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

版本控制工具-Git

2023-06-21 14:46 作者:Ju加油坊  | 我要投稿

?一、版本工具介紹

?1、 什么是版本控制

?? 版本控制(Revision control)是一種在開(kāi)發(fā)的過(guò)程中用于管理我們對(duì)文件、目錄或工程等內(nèi)容的修改歷史,方便查看更改歷史記錄,備份以便恢復(fù)以前的版本的軟件工程技術(shù)。

?2常見(jiàn)的版本控制器

主流的版本控制器有如下這些:

Git

SVN(Subversion)

CVS(Concurrent Versions System)

VSS(Micorosoft Visual SourceSafe)

版本控制產(chǎn)品非常的多,現(xiàn)在影響力最大且使用最廣泛的是Git與SVN

? 2.1集中版本控制

所有的版本數(shù)據(jù)都保存在服務(wù)器上,協(xié)同開(kāi)發(fā)者從服務(wù)器上同步更新或上傳自己的修改;

集中式版本控制

所有的版本數(shù)據(jù)都存在服務(wù)器上,用戶的本地只有自己以前所同步的版本,如果不連網(wǎng)的話,用戶就看不到歷史版本,也無(wú)法切換版本驗(yàn)證問(wèn)題,或在不同分支工作。而且,所有數(shù)據(jù)都保存在單一的服務(wù)器上,有很大的風(fēng)險(xiǎn)這個(gè)服務(wù)器會(huì)損壞,這樣就會(huì)丟失所有的數(shù)據(jù),當(dāng)然可以定期備份。代表產(chǎn)品:SVN、CVS、VSS

? ?2.2、分布式版本控制

所有版本信息倉(cāng)庫(kù)全部同步到本地的每個(gè)用戶,這樣就可以在本地查看所有版本歷史,可以離線在本地提交,只需在連網(wǎng)時(shí)push到相應(yīng)的服務(wù)器或其他用戶那里。由于每個(gè)用戶那里保存的都是所有的版本數(shù)據(jù),只要有一個(gè)用戶的設(shè)備沒(méi)有問(wèn)題就可以恢復(fù)所有的數(shù)據(jù),但這增加了本地存儲(chǔ)空間的占用。

? ?

分布式版本控制

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

SVN是集中式版本控制系統(tǒng),版本庫(kù)是集中放在中央服務(wù)器的,而工作的時(shí)候,用的都是自己的電腦,所以首先要從中央服務(wù)器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服務(wù)器。集中式版本控制系統(tǒng)是必須聯(lián)網(wǎng)才能工作,對(duì)網(wǎng)絡(luò)帶寬要求較高。

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

二、創(chuàng)建Git工作環(huán)境

下載Git

打開(kāi)?git官網(wǎng),下載git對(duì)應(yīng)操作系統(tǒng)的版本。

選擇版本

這里我選擇下載64-bit Git for Windows Setup

1.1、安裝Git

選擇安裝配置信息

一直Next默認(rèn)就好了,如果需要設(shè)置就要仔細(xì)讀一下安裝界面上的選項(xiàng)。

1.2、啟動(dòng)Git

安裝成功后在開(kāi)始菜單中會(huì)有Git項(xiàng),菜單下有3個(gè)程序:

Git Bash:Unix與Linux風(fēng)格的命令行,使用最多,推薦最多

Git GUI:圖形界面的Git,不建議初學(xué)者使用,盡量先熟悉常用命令

點(diǎn)擊Create New Repository可以直接創(chuàng)建一個(gè)新的倉(cāng)庫(kù)。

三、? Git工作流程介紹

 Git是目前世界上最先進(jìn)的分布式版本控制系統(tǒng)。首先了解下git的工作流程:

? ? ? ?Workspace:工作區(qū)
  Index / Stage:暫存區(qū)
  Repository:倉(cāng)庫(kù)區(qū)(或本地倉(cāng)庫(kù))
  Remote:遠(yuǎn)程倉(cāng)庫(kù)

四、git基本操作

?1、 初始化配置

# 設(shè)置用戶名

git config --global user.name "你的名字"

# 配置用戶郵箱

git config --global user.email "你的常用郵箱"

# 查看配置列表項(xiàng)

git config --list

2、基本操作

git init --- 初始化倉(cāng)庫(kù)

要使用Git進(jìn)行版本管理,必須先初始化倉(cāng)庫(kù)。Git是使用git init命令進(jìn)行初始化操作。

? 如果初始化成功,執(zhí)行了git init命令的目錄就會(huì)生成.git目錄。這個(gè).git目錄里存儲(chǔ)著管理當(dāng)前目錄內(nèi)容所需要的倉(cāng)庫(kù)數(shù)據(jù)。 在Git中,我們將這個(gè)目錄的內(nèi)容稱為“附屬于該倉(cāng)庫(kù)的工作樹”。文件的編輯等操作在工作樹中進(jìn)行,然后記錄到倉(cāng)庫(kù)中,以此管理文件的歷史快照。如果想將文件恢復(fù)到原先的狀態(tài),可以從倉(cāng)庫(kù)中調(diào)取之前的快照。

git status ---- 查看倉(cāng)庫(kù)的狀態(tài)

git status命令用于顯示git倉(cāng)庫(kù)的狀態(tài)。非常有用,務(wù)必牢記。 工作樹和倉(cāng)庫(kù)在被操作的過(guò)程中,狀態(tài)會(huì)不斷發(fā)生變化。在Git操作過(guò)程中時(shí)常使用git status命令查看當(dāng)前狀態(tài)。

git add --- 向暫存區(qū)添加文件

如果只在Git倉(cāng)庫(kù)所在目錄里創(chuàng)建了文件或文件夾,該文件不會(huì)被記入Git倉(cāng)庫(kù)的版本管理對(duì)象中,我們用git status命令查看時(shí),它會(huì)顯示在未跟蹤文件中。 想要讓文件成為Git倉(cāng)庫(kù)的管理對(duì)象。就需要用git add命令將其加入暫存區(qū)。暫存區(qū)是提交前的一個(gè)臨時(shí)區(qū)域。
git commit?----保存?zhèn)}庫(kù)的歷史記錄(git commit -m “注釋內(nèi)容”)

git commit命令將當(dāng)前暫存區(qū)的文件實(shí)際保存到倉(cāng)庫(kù)的歷史記錄中。

git log?---- 查看提交日志

git log命令可以查看以往倉(cāng)庫(kù)中提交的日志,包括可以查看什么人在什么時(shí)候進(jìn)行了提交或合并,以及操作前后有怎么樣的差別[ git reflog :查看提交日志信息,經(jīng)常與回退命令結(jié)合使用]。

?Git reset----回退版本【基于索引的版本回退】

???? git reset --hard 版本標(biāo)識(shí)

?? 回到指定版本。

--什么是分支?

?在版本控制過(guò)程中,使用多條線同時(shí)推進(jìn)多個(gè)任務(wù)。幾乎所有的版本控制系統(tǒng)都以某種形式支持分支;使用分支意味著你可以把你的工作從開(kāi)發(fā)主線上分離開(kāi)來(lái),以免影響開(kāi)發(fā)主線。

--分支的好處?

????? -->同時(shí)并行推進(jìn)多個(gè)功能的開(kāi)發(fā),提高開(kāi)發(fā)效率;

????? -->各個(gè)分支在開(kāi)發(fā)過(guò)程是相對(duì)獨(dú)立的,如果某一個(gè)分支開(kāi)發(fā)失敗,不會(huì)對(duì)其它分支有任何影響;失敗的分支刪除重新開(kāi)始即可。

?---分支的創(chuàng)建和合并

分支的創(chuàng)建

? ? $ git branch <branch name>.?

? ? $ git checkout -b <branch name>

分支的跳轉(zhuǎn)

? ? $ git checkout <branch name>

合并分支

?? 1、切換到接受修改的分支(被合并,增加新內(nèi)容)上,git checkout [分支名];

2、執(zhí)行merge命令。

? 如下:? $ git merge? <branch name>

?? ? ? // 把該分支修改并提交的內(nèi)容合并到master(主)分支

刪除分支

? ? $ git branch -D <branch name>

查看所有分支

? ? $ git branch -v

--合并的沖突

1、編輯文件,刪除特殊符號(hào);

2、把文件修改到滿意的程度,保存退出;

3、Git add[文件名];

4、Git commit -m “注釋” 。注意:此時(shí)commit一定不能帶具體文件名。

? 沖突需要自行修改

<<<<<<< HEAD

What's a Vegetable's favourite martial art? Carrotee!

=======

Why did the carrot get an award? Because he was outstanding in his field!

>>>>>>> your-branch

git中如何忽略文件上傳?

具體操作:

第一步進(jìn)入我們項(xiàng)目的根目錄,我是直接使用git bash直接進(jìn)入的。在項(xiàng)目的根目錄創(chuàng)建.gitignore文件,此時(shí)一定要在沒(méi)創(chuàng)建git倉(cāng)庫(kù)的時(shí)候創(chuàng)建該文件(也就是說(shuō)還沒(méi)使用git init的時(shí)候)。如下圖

我們?cè)谠撐募懭胛覀兒雎缘奈募臀募A即可。

在完成上訴操作之后,我們就可以開(kāi)始創(chuàng)建我們的git倉(cāng)庫(kù)了。

?===遠(yuǎn)程倉(cāng)庫(kù)===

4、建立遠(yuǎn)程倉(cāng)庫(kù)連接別名

// 建立remote(origin)的url別名

$ git remote add origin <repository URL>

// 更新已有的remote(origin)的url別名

???? ? $ git remote set-url origin <repository URL>

// 添加一個(gè)新的remote,名字為github

?? ? ?? ? $ git remote add? github? <new repository URL>

???????????? //刪除遠(yuǎn)程鏈接別名

$ git remote rm origin

???? //? 提交遠(yuǎn)程

? ??????? $ git push origin master

?? //拉取遠(yuǎn)程文件操作

? $ git pull origin master

5. 與遠(yuǎn)程版本庫(kù)協(xié)作

假設(shè)遠(yuǎn)程版本庫(kù)的地址?http://github.com/example/test.git? ? ? ? ? ? ?

? ? $ git clone?http://github.com/example/test.git

提交更改

? ? $ git push origin master

? ? ? // origin 指定遠(yuǎn)程版本庫(kù)的地址,master部分指定同步到哪一個(gè)分支

將遠(yuǎn)程版本庫(kù)的修改同步到本地

? ? $ git fetch origin master

? ? $ git merge origin/master

? ? $ git pull origin master

?? ? ? // pull 相當(dāng)于將fetch和merge兩個(gè)命令一起執(zhí)行

注:更新操作:

$ git pull$ git pull origin

將遠(yuǎn)程主機(jī) origin 的 master 分支拉取過(guò)來(lái),與本地的 brantest 分支合并。

git pull origin master:brantest

如果遠(yuǎn)程分支是與當(dāng)前分支合并,則冒號(hào)后面的部分可以省略。

git pull origin master

上面命令表示,取回 origin/master 分支,再與本地的 brantest 分支合并。

--跨團(tuán)隊(duì)協(xié)作開(kāi)發(fā)(知識(shí)拓展)



版本控制工具-Git的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
忻州市| 申扎县| 新宾| 屏南县| 东山县| 万安县| 光泽县| 瑞金市| 阿荣旗| 大厂| 博客| 中超| 宜阳县| 阿巴嘎旗| 汕头市| 惠州市| 湘潭县| 桑植县| 天峨县| 常德市| 郯城县| 常州市| 安平县| 汶川县| 惠州市| 富川| 南华县| 普宁市| 涟水县| 深水埗区| 海宁市| 周宁县| 凯里市| 东台市| 高雄市| 庆安县| 三原县| 东平县| 秀山| 汝南县| 新源县|