『壹』 linux git 怎樣退回到指定版本
無論windows還是linux或其來他操作系統,源git版本管理的操作命令都是一致的,沒有任何區別。
退回到指定版本可使用revert反轉提交命令,git revert用一個新提交來消除一個歷史提交所做的任何修改。revert 之後你的本地代碼會回滾到指定的歷史版本,這時你再 git push 既可以把線上的代碼更新。
『貳』 怎麼使用repo或git工具將本地代碼回退到歷史的某一個版本。
那些xml文件來是分支配置的文件,源使用的話直接init 後再sync就可以了
repo init git地址 -b 分支名 -m xml文件名
repo sync
如果要將本地代碼回到某個歷史版本直接checkout 或者 reset
checkout 支持將文件切換到歷史版本,資料庫不會修改,還可以回到你最新的狀態
reset 是直接回退帶指定版本,它有兩種模式 一種是只將所有提交回退,修改還在,還有一種模式是完全回退,修改直接就沒了。
repo forall -c git chekout 指定節點的哈希值
repo forall -c git reset 指定節點的哈希值
repo forall -c git reset 指定節點的哈希值 --hard (此操作會回退掉指定節點之後的所有修改,如果回退出錯 只能重新跟伺服器同步了。)
希望我的回答能幫助你
『叄』 github for windows如何回滾到某個版本
學命令行吧。就一句
git co xxxxx yyyy.file
xxxx就是版本的hash值。
『肆』 git reset回退版本後怎麼恢復到當前版本
可以使用git reflog 命令查看本地的操作記錄
b7057a9 HEAD@{0}: reset: moving to b7057a9
98abc5a HEAD@{1}: commit: more stuff added to foo
b7057a9 HEAD@{2}: commit (initial): initial commit
然後使用$ git reset --hard 98abc5a回到內98abc5a對應的容那次commit
『伍』 git 沒add 就用reset回到之前的版本了,還有辦法回來嗎
沒有用git add,也就是相應的信息沒有加入到Git的緩沖區中,更沒有被Git作為版本提交記錄下來。所以,不能恢復了.
『陸』 zend studio 10 使用git 如何回到歷史版本
一.選中你的項目->右鍵->replaced with->commit
二.會彈出一個對話框,告訴你現在的代碼將不會保留,直接點OK即可。
三.選中你要恢復到的時間點
四.點擊OK即可
『柒』 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
以上的操作,我們知道了如何查看版本分支,和如何回復到以前的版本。
『捌』 git 回滾到某個版本還能回來嗎
可以的,您需要做的是如下幾件事:
找到您要回滾到的提交編號
git reflog
回滾
git reset --hard yourCommitNum
『玖』 intellij idea用git怎麼退回上個版本
gitreset[commit哈希值]但是這樣做只能把本地分支回滾到該commit上,遠程分支還在原來的地方專。可以這樣操作:在你屬想要回滾的commit上另外建一個新分支,然後gitcheckout[該分支],然後把原來的分支刪除掉,gitbranch-d[老分支]可以刪除本地的老分支,同樣,遠程分支還是老狀態,可以gitpushorigin:[老分支],把遠程的老分支刪除,這樣你需要回滾的commit之後的信息在本地和遠程都徹底消滅了(慎重,確保你真的不要這些信息了哦)。而你需要回滾的commit之前的信息全部保存了,只不過是分支名字換了一下,你也可以把分支改名回來。這時遠程的新分支還不存在,你之後又改動commit並且push之後,遠程也和本地同步上了。
『拾』 Git怎麼還原上一個版本
第一步: git log 查看之前的抄commit的id,找到想要還原的版本
第二步: git reset --hard 還原到之前的某個版本
第三步: git push -f origin master 強制push到遠程
前兩步在eclipse中也可操作:
team --> show in hostory
找到想還原的版本
然後再強制push (git push -f origin master)