1. 程式人生 > >git切換分支儲存修改的程式碼的方法

git切換分支儲存修改的程式碼的方法

原文參考:http://www.tonitech.com/2344.html

剛才做操作發現一個問題,就是本地有一個old分支,此時本地又new了一個新的分支,那麼我在old分支上做修改後切換到new分支上,發現檔案是修改後的。原本理解是一個分支一套程式碼,那麼為什麼此時程式碼是一樣的,如果工作中遇到一個分支上檔案修改一半,臨時需要去另一個分支繼續修改檔案時,需要如何操作呢?

一、及時commit程式碼

在new分支上把已經開發完成的部分程式碼commit掉,不push,然後切換到old分支修改程式碼,做完了commit,所有分支互不影響,這是一個理想的方法。

二、使用git stash

當在new分支上程式碼寫到一半時,被要求解決old分支上的bug時,

在new分支上的時候在命令列輸入:git stash 或 git stash save "備註資訊"。

這樣以後new分支程式碼就回到自己上一個commit了,直接git stash的話git stash的棧會直接給你一個hash值作為版本的說明,如果用git stash save “修改的資訊”,git stash的棧會把你填寫的“修改的資訊”作為版本的說明。

接下來切到old分支修改程式碼完成commit,就又再回到new分支,輸入:git stash pop 或 git stash apply [email protected]{0}

git stash list可以看到所有的版本資訊:


這時候new分支上被擱置的程式碼就回來了。

用IDE工具的shelve的功能

有一些IDE工具提供了shelve的功能,shelve的意思是“將…擱在一邊”,即把還沒寫完的程式碼先擱在一邊。我開發都是使用jetbrains公司的IDEA和PhpStorm,它們就提供了shelve的功能,方法:

首先在IDE的底部找到“Changes”,點開會有local的選項卡,選中你要擱置的程式碼,點選右鍵,選擇“Shelve Changes”,在提交的輸入框中輸入你的註釋,以便回來的時候識別你需要的版本,點選“Shelve Changes”鍵即可。這時選項卡上會多一個“Shelf”的選項卡,裡面就有你擱置的程式碼。

這時候你可以去old分支修改程式碼,改完了之後回到new分支,到“Shelf”選項卡下選擇你要恢復的程式碼或者版本,點選右鍵選擇“Unshelve Changes”,你的擱置的程式碼就回來了。



相關推薦

git切換分支儲存修改程式碼方法

原文參考:http://www.tonitech.com/2344.html剛才做操作發現一個問題,就是本地有一個old分支,此時本地又new了一個新的分支,那麼我在old分支上做修改後切換到new分支上,發現檔案是修改後的。原本理解是一個分支一套程式碼,那麼為什麼此時程式碼

Git 切換分支並下載程式碼

Git 切換分支並下載程式碼 git一般有很多分支,我們clone到本地的時候一般都是master分支,那麼如何切換到其他分支呢並下載分支程式碼呢?讓我們拭目以待! 首先先從遠端拉取程式碼,這時候從遠端拉取的程式碼一般是master分支上的程式碼。 [email

git切換分支,合併程式碼

git切換分支,合併分支,合併程式碼 1、建立dev分支,第一句命令就已經建立並且切換到了dev分支,下面的兩個命令是分別是建立dev,切換到dev git checkout -b dev git branch dev git checkout dev 2、檢視所有的分支,帶有*部分

git在一個分支修改程式碼但是不想commit到本地git庫,需要切換一個分支修改程式碼,這個時候也可以使用git stash

在一個分支上修改了程式碼但是不想commit到本地git庫,需要切換一個分支去修改程式碼,這個時候也可以使用git stash $ git stash modify your code or checkout to another branch g

Android studio使用git切換分支開發的方法(圖文教程)

Android studio使用git切換分支開發的方法涉及到團隊開發,所以有了分支開發概念,當我們第一次從倉庫git下來的時候一般都是master主分支,因為涉及到許可權問題,你無法在主分支master上面提交,你只能進行分支開發提交,但是如何切換主分支呢?這裡我提供兩個方

git切換分支報錯解決

git切換分支 技術分享 .com img 管理 重新 需要 隱藏 TP 今天使用git切換分支的時候總是報這種錯誤。 解決辦法: 在項目文件夾中.git文件夾(這是個隱藏文件夾,需要在文件管理導航欄--工具--文件夾選項--查看--勾選顯示隱藏文件夾)找到不能創建的文件

git切換分支導致代碼丟失找回(git reflog找回錯誤的重置)

alt img 分支 錯誤 bsp git切換分支 代碼 技術分享 .com 1.使用git reflog查看日誌 2.切換到丟失的分支 3. 創建一個臨時分支 如(diff),並切換到dev(原分支),然後合並diff到dev分支 4.查看

git 切換分支時會把未add或未commit的內容帶過去

       git 切換分支時會把未add或未commit的內容帶過去, 這一點值得注意。        為什麼呢?        因為未add的內容不屬於任何一個分

Git 丟棄所有本地修改方法

本地修改了許多檔案,其中有些是新增的,因為開發需要這些都不要了,想要丟棄掉,可以使用如下命令: git checkout . #本地所有修改的。沒有的提交的,都返回到原來的狀態 git stash #把所有沒有提交的修改暫存到stash裡面。可用git stash pop回覆。 git rese

IDEA git 切換分支注意事項

IDEA 幫助文件提供了切換分支時的選項說明; 1. 本地分支切換的時候(例如A切到B),會彈出來Restore workspace on branch switching 對話方塊,如果選擇是的話,在切換分支的時候,你在當前分支(A)所做的一些還未add或commit

Git 丟棄所有本地修改方法

本地修改了許多檔案,其中有些是新增的,因為開發需要這些都不要了,想要丟棄掉,可以使用如下命令: git checkout . #本地所有修改的。沒有的提交的,都返回到原來的狀態 git stash #把所有沒有提交的修改暫存到stash裡面。可用git sta

git 切換分支 + 提交 + 更新 +檢視歷史 + 提交 + 推送

一.  檢視遠端分支   git branch  或者 git branch -r二.拉取遠端分支到本地 兩種方法  公式 1: git checkout -b 本地分支名 origin/遠端分支名         (推薦使用):原因:可以直接跳轉到分支舉例子 介紹 看的會更

git 切換分支和遠端分支並提交

一、  本地建立一條新的分支repo start --all   work1 (全部工程)repo start  work1 當前git庫git checkout  work1   切換到新的分支工作將本地已有的分支 和 遠端分支連線git branch --set-upst

關閉硬解,修改程式碼方法

有時候,顯示有問題,需要判斷是軟繪有問題還是硬解有問題。 可以在code ActivityThread.java中強制關閉硬解 if (data.persistent) { // Persistent processes on lo

git 切換分支及熱分支問題

本地develep 分支 。 新建一個分支(iss53)並且切換到這個分支。 git checkout -b iss53 如果需要切回分支master,需要把在iss53上的所有修改都提交了。 git checkout master 主分支一個新的檔案出了

git切換到別的分支,要暫時儲存當前分支修改(不想進行add 和commit)的方法 git stash

最近在一個原有的專案上做一次非常大的改版,底層的資料庫做了很大的變化,跟現在的版本無法相容。現在的工作除了開發最新的版本之外還要對原來的版本做例行的維護,修修補補。於是有了在兩個分支之間遊走切換的問題,最新改版的程式碼在分支new上,舊版本的程式碼在分支old上,我在new上開發了一半,忽然有人給了我一個

gitgit儲存當前狀態切換分支方法

情況:在修改一個專案的時候,突然又有其他分支專案需要修改bug。git官方文件有句話“切換分支的時候最好保持一個清潔的工作區域。”,不知道我的理解是不是正確的。如果你當前分支有修改,但是還沒有commit,如果你要切換分支的話,最好就是把內容都commit了?還是隻用add

Git Stash用法,方便臨時處理bug時隨時切換分支而不丟失修改

最近在使用Git管理專案工程的時候,遇到了很多問題,也學習到了很多關於Git常見使用的技巧,下面就其中關於Git Stash的用法和大家分享下。 首先,簡單介紹下Git Stash命令的用法,詳細的用法在man文件中有相關介紹,下面我來說明常見的使用。 git stash: 備份當前的工作區的內

git+webstorm 簡便方法:檢視檔案被修改程式碼記錄

甩鍋和找問題的技能啊 因為昨天系統升級出現了一個bug,大領導讓我下班前改完,同時找找什麼原因(原話是:誰修改了這塊引出了bug,讓我blame一下,看看修改記錄),當時沒注意,等改完merge的時候,直屬領導問我blame沒有 ,我一臉懵逼。希望對用git和webst

git切換分支時候不想提交檔案,怎麼辦? git的檔案儲存功能

git 的儲存功能。 原文:http://www.liaoxuefeng.com/  件開發中,bug就像家常便飯一樣。有了bug就需要修復,在Git中,由於分支是如此的強大,所以,每個bug都可以通過一個新的臨時分支來修復,修復後,合併分支,然後將臨時分支刪除。