国产粉嫩无码不卡在线观看,酒店大战丝袜高跟鞋人妻,特级精品毛片免费观看,欧美亚洲日本国产综合在线

版本管理最好用的工具,你懂多少?(版本管理工具有哪些)

版本管理最好用的工具,你懂多少?(版本管理工具有哪些)

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

簡單來說,版本控制就是用于管理多人協(xié)同開發(fā)項(xiàng)目的技術(shù)。下面要講的是一個(gè)名為Git的版本控制器。

Git的下載:直接在git官網(wǎng)下載的話可能會(huì)有點(diǎn)慢,推薦使用淘寶鏡像下載:CNPM Binaries Mirror

我的windows系統(tǒng),安裝起來直接下一步下一步的操作就可以了。

具體學(xué)習(xí)資料,可以到官方文檔上學(xué)習(xí)下,我總結(jié)了一些面試常問的相關(guān)知識(shí)點(diǎn),如果都掌握了,就基本沒有什么問題了。

1、Git是什么使用什么語言編寫的?

git使用的是C語言編寫的,git很快,c語言通過減少運(yùn)行的開銷來做到這一點(diǎn)。

2、git如何查看所有分支?

A. git status B. git reflog C. git branch -a D. git log

正確答案: C

3、 如何創(chuàng)建分支?

A. git branch 分支 B. git create 分支 C. git pull 分支 D. git push 分支

正確答案: A

4、 如何跳轉(zhuǎn)已經(jīng)存在的分支?

A. git checkout 分支名 B. git add 分支名 C. git push 文件名 D. git rm 文件名

正確答案: A

5、 使用git管理代碼如何推送到遠(yuǎn)程?

A. git add

B. git commit

C. git pull

D. git push origin master

正確答案: D

6、 git 查看提交日志的命令是?

A. git commit

B. git reflog

C. ssh-keygen

D. netstat -anp

正確答案: B

7、 在git中如何跳轉(zhuǎn)指定版本?

參考答案:

1. git reflog —查看日志

2、git reset –hard 版本號(hào)

8、 Git 和 SVN 有什么區(qū)別?

Git

SVN

1. Git 是一個(gè)分布式的版本控制工具

1. SVN 是集中版本控制工具

2. 它屬于第 3 代版本控制工具

2. 它屬于第 2 代版本控制工具

3. 客戶端可以在其本地系統(tǒng)上克隆整個(gè)存儲(chǔ)庫

3. 版本歷史記錄存儲(chǔ)在服務(wù)器端的存儲(chǔ)庫中

4. 即使離線也可以提交

4. 只允許在線提交

5.Push/pull 操作更快

5.Push/pull 操作較慢

6. 工程可以用 commit 自動(dòng)共享

6. 沒有任何東西能自動(dòng)共享

9、 Git pull 和 Git fetch 有什么區(qū)別?

Git pull 命令從中央存儲(chǔ)庫中提取特定分支的信息更改或提交, 并更新本地存儲(chǔ)庫中的目標(biāo)分支.

Git fetch 也用于相同的目的, 但它的工作方式略有不同. 當(dāng)你執(zhí)行 Git fetch 時(shí), 它會(huì)從所需的分支中提取所有新提交, 并將其存儲(chǔ)在本地存儲(chǔ)庫中的新分支中. 如果要在目標(biāo)分支中反映這些更改, 必須在 Git fetch 之后執(zhí)行 Git merge. 只有在對(duì)目標(biāo)分支和獲取的分支進(jìn)行合并后才會(huì)更新目標(biāo)分支. 為了方便起見, 請(qǐng)記住以下等式:

Git pull = Git fetch Git merge

10. 什么是 Git stash?

首先應(yīng)該解釋 Git stash 的必要性.

通常情況下, 當(dāng)你一直在處理項(xiàng)目的某一部分時(shí), 如果你想要在某個(gè)時(shí)候切換分支去處理其他事情, 事情會(huì)處于混亂的狀態(tài). 問題是, 你不想把完成了一半的工作的提交, 以便你以后就可以回到當(dāng)前的工作. 解決這個(gè)問題的答案是 Git stash.

再解釋什么是 Git stash.

stash 會(huì)將你的工作目錄, 即修改后的跟蹤文件和暫存的更改保存在一堆未完成的更改中, 你可以隨時(shí)重新應(yīng)用這些更改

版本管理最好用的工具,你懂多少?(版本管理工具有哪些)

常用命令總結(jié):

# 提交修改三步 add ,commit, push.Git pull

拉取資源。

# 切換回 devGit checkout dev###################Git 檢出其他分支的某個(gè)文件到當(dāng)前分支并提交 ############Git checkout **.javaGit statusGit add **.javaGit commit -m ''Git pushGit lg#############Git 如何讓單個(gè)文件回退到指定的版本 ########1. 進(jìn)入到文件所在文件目錄, 或者能找到文件的路徑, 查看文件的修改記錄

回退到指定的版本

#3. 提交到本地參考Git commit -m "注釋"#4. 更新到工作目錄Git checkout **.java#5. 提交到遠(yuǎn)程倉庫Git push origin master#6. 撤銷回退到合并之前的遠(yuǎn)程 dev 版本Git reset --hard dev#7. 顯示提交更改內(nèi)容Git show

還有一些很有用但是不常用的命令:

git log -p -1 查詢最近一次的文件更改.

git diff 查看已暫存和未暫存修改

git rm fileName 從 Git 倉庫中刪除

git reset HEAD README.md 可以取消暫存再次查看文件狀態(tài)被修改的文件變成 unstaged 狀態(tài)

添加遠(yuǎn)程倉庫:

Git remote add <libraryName> <url>$ Git remote add test https://libraryUrl/demo/demo.Git$ Git remoteorigintest

遠(yuǎn)程倉庫中抓取與拉取

$ Git fetch [remote-name]

這個(gè)命令會(huì)訪問遠(yuǎn)程倉庫, 從中拉取所有你還沒有的數(shù)據(jù). 執(zhí)行完成后, 你將會(huì)擁有那個(gè)遠(yuǎn)程倉庫中所有分支的引用, 可以隨時(shí)合并或查看.

推送到遠(yuǎn)程倉庫

Git push [remote-name] [branch-name]

, 下面是推送當(dāng)前分支到遠(yuǎn)程的 master 分支

$ Git push origin master

打標(biāo)簽

像其他版本控制系統(tǒng) (VCS) 一樣, Git 可以給歷史中的某一個(gè)提交打上標(biāo)簽, 以示重要.

查看所有標(biāo)簽 Git tag。

git cherry-pick

命令git cherry-pick 通常用于把特定提交從存儲(chǔ)倉庫的一個(gè)分支引入到其他分支中。常見的用途是從維護(hù)的分支到開發(fā)分支進(jìn)行向前或回滾提交。
合并(merge) 變基(rebase)

forking的工作流程的優(yōu)點(diǎn)

它不是用單個(gè)服務(wù)端倉庫充當(dāng)“中央”代碼庫,而是為每個(gè)開發(fā)者提供自己的服務(wù)端庫。forking工作流程最常用于公共開源項(xiàng)目中。

Forking工作流程的主要優(yōu)點(diǎn)是可以匯集提交貢獻(xiàn),又無需每個(gè)開發(fā)者提交到一個(gè)中央倉庫中,從而實(shí)現(xiàn)干凈的項(xiàng)目歷史記錄。開發(fā)者可以推送代碼到自己的服務(wù)端倉庫,而只有項(xiàng)目維護(hù)人員直接推送代碼到官方倉庫中。

當(dāng)開發(fā)者準(zhǔn)備發(fā)布本地提交時(shí),他們的提交會(huì)推送到自己的公共倉庫中,而不是官方倉庫中。 需要發(fā)布則提交合并請(qǐng)求,他們向主倉庫請(qǐng)求拉取(pull request),項(xiàng)目維護(hù)人員(合并人)還可以對(duì)項(xiàng)目進(jìn)行審核更新。

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。