當前位置:首頁 » 經典版本 » git分支版本
擴展閱讀
天成解說一個人的游戲 2021-03-16 21:51:02
打游戲什麼牌子顯卡好 2021-03-16 21:51:00

git分支版本

發布時間: 2021-03-12 12:56:00

A. git如何從遠程分支獲取最新版本到本地

一、查看遠程分支
使用如下Git命令查看所有遠程分支:
git branch -r11

二、拉取遠程分支並創建本地分支
方法一
使用如下命令:
git checkout -b 本地分支名x origin/遠程分支名x11

使用該方式會在本地新建分支x,並自動切換到該本地分支x。
方式二
使用如下命令:
git fetch origin 遠程分支名x:本地分支名x11

使用該方式會在本地新建分支x,但是不會自動切換到該本地分支x,需要手動checkout。
轉自:http://blog.csdn.NET/tterminator/article/details/52225720

B. 使用Git的時候我們比較本地分支版本和遠程版本的不同之處使用什麼指令

假設遠端庫名是 origin,你要比較的本地分支為 test,遠端分支就是 xxx

C. git 獲取歷史版本的幾種方式

我們簡單的描述一個例子:
a)初始化操作
有兩個文件file1.txt和file2.txt

1, 初始化的時候就有這兩個文件

操作:

git init

git status

git add .

git commit -m 「init version」

2, 在master分支上修改了file1.txt,並提交

操作:

(修改file1.txt)

git add file1.txt

git commit -m 「change file1」

3, 然後新建分支banana,並切換到banana分支上

操作:

git branch banana

git checkout banana

4, 修改file1.txt和file2.txt,並提交。

操作:

(修改file1.txt和file2.txt)

git add file1.txt file2.txt

git commit -m 「change by banana」

這個時候,我們可以輸入 gitk,查看一下當前的版本情況。如下圖:git-001

5, 然後,切換到master分支上,修改file2.txt,並提交。

操作:

git checkout master

(修改file2.txt)

git add file2.txt

git commit -m 「change by master」

輸入gitk,查看當前版本情況,如下圖:git-002

b)發現問題需要查看歷史版本
我們現在發現當前的版本有點問題,還不能提交到版本庫。

1,我們需要從git commit中返回.

則輸入:

git reset --soft HEAD^

解釋一下,HEAD是當前分支的最新版本。^表示父節點。當前節點的父節點,就是上一次提交的版本。也就是標記為「change file1」的版本。

問為什麼不是」change by banana」這個版本呢?不同的分支哦。」change by banana」是banana分支的最新代碼,和master分支不同的。

這個時候輸入

git status

看看,是不是顯示file2.txt修改了沒有提交呢。

2,我們需要從git add中返回

再仔細查看之後,我們發現file2.txt真的寫錯了,需要返回到git add之前的狀態。

輸入:

git reset -q file2.txt

這個時候,file2.txt就回到了解放前了。用git status查看一下,file2.txt是」change not staged for commit」狀態。

3,回到沒有做過的情況

我們最終確定,最後一次修改的file2.txt是無用的代碼,我們需要廢棄掉。

注意,這個操作不能恢復的哦。

git reset --hard

這個命令,不能指定具體的文件。是把當前的修改全部清除,恢復到最後一次提交的版本。

這個時候,用gitk查看一下:git-003

已經徹底回復到了「change file 1」的版本了。

4,直接回復到某個版本

我們現在切換到banana分支。

git checkout banana

然後用gitk看一下。可以看出,我們之前的操作,對banana分支一點影響也沒有。現在我們需要把banana分支回復到初始狀態,但是當前的改動的代碼還是需要留著。我們可以看,init版本是當前版本的父節點的父節點。我們可以這么操作:

git reset --soft HEAD^^

然後用gitk看一下:git-004

最近的版本已經變成了init version了。所有的改動都是add未提交狀態。

5,得到當前最新代碼

最後。我們把file1.txt和file2.txt都刪掉。我們需要從版本庫中取得當前最新的代碼。

很簡單:

git checkout master

如果是要banana分支的最新代碼,則:

git checkout banana

以上的操作,我們知道了如何查看版本分支,和如何回復到以前的版本。

D. git怎麼查看版本命令行

首先確保你的本地git工作目錄下已經增加了遠程分支了使用gitremote-v查看。如果沒有則先使用gitremoteadd命令添加一個(假設名為origin,分支為master)。如果已經有了,則使用gitpushoriginmaster命令提交當前工作目錄下的分支到遠程master分支

E. git 把一個版本分支下的一個類,遷移到另一個分支下,這個怎麼做呢

使用了SVN,小問號是本地新增加的文件與伺服器未同步,有* 號 是本地文件與伺服器文件有區別。可能是沒有提交到伺服器。
SVN是Subversion的簡稱,是一個開放源代碼的版本控制系統,相較於RCS、CVS,它採用了分支管理系統,它的設計目標就是取代CVS。互聯網上很多版本控制服務已從CVS遷移到Subversion

F. 如何使用git回滾版本到分支中的某一個commit

git reset [commit 哈希值]

但是這樣做只能把本地分支回滾到該commit上,遠程分支還在原來的地方。

可以這樣操作:在你想要回滾的commit上另外建一個新分支,然後git checkout [該分支],然後把原來的分支刪除掉,git branch -d [老分支]可以刪除本地的老分支,同樣,遠程分支還是老狀態,可以git push origin :[老分支],把遠程的老分支刪除,這樣你需要回滾的commit之後的信息在本地和遠程都徹底消滅了(慎重,確保你真的不要這些信息了哦)。而你需要回滾的commit之前的信息全部保存了,只不過是分支名字換了一下,你也可以把分支改名回來。這時遠程的新分支還不存在,你之後又改動commit並且push之後,遠程也和本地同步上了。

G. 版本控制中的分支是什麼意思,我用的是git

舉個簡單的例子,
比如你的代碼已經發布了,
然後接到新的需求1,你正在開發中,而且周期比較長
突然接到新需求2,在發布基礎上,調整一些東西,這個需求必須立即發布,
那麼你就必須創建一個分支,用需求1之前的代碼 來修改代碼實現需求2並發布