最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用go語言實(shí)現(xiàn)Git?重命名遠(yuǎn)程分支??

 更新時間:2022年06月08日 11:12:39   作者:??王中陽Go????  
這篇文章主要介紹了go語言實(shí)現(xiàn)Git?重命名遠(yuǎn)程分支,文章基于go語言的基礎(chǔ)展開Git?重命名遠(yuǎn)程分支的實(shí)現(xiàn)過程,需要的小伙伴可以參考一下,希望對你的學(xué)習(xí)有所幫助

問題描述

小A和我并行開發(fā),他在優(yōu)化之前的代碼邏輯,我在開發(fā)新功能。

小A在我之前把代碼提交到了測試分支,我想提交我的新功能代碼到測試分支時發(fā)現(xiàn)巨多沖突。

首先解決沖突浪費(fèi)時間,我的新功能代碼每次提測都需要解決沖突。

再者我再測試分支解決沖突,只能按照小A優(yōu)化后的代碼邏輯的去解決,和我自己的分支邏輯并不一致。

交付給測試同學(xué)測的代碼,和我自己分支的代碼不一致,這種測試是沒有意義的。

反思出問題的原因

  • 工廠模式使用的不合理
  • 任務(wù)分配的不合理

代碼層面

因?yàn)槭枪S設(shè)計模式,我負(fù)責(zé)的實(shí)現(xiàn)類A和他的實(shí)現(xiàn)類B雖然沒有直接關(guān)系。但是因?yàn)樗薷牧斯S類中的方法定義。

比如之前工廠類中的接口是這么定義的

package factory

type xxx interface {
   GetXxxx(ctx context.Context, req aaa.aa) (res bbb.bb, err error)  
}

但是小A修改了工廠類中的接口定義:

package factory

type xxx interface {
   GetXxxx(ctx context.Context, req ccc.cc) (res ddd.dd, err error)  
}

這樣就導(dǎo)致了一個問題:

我想合并我的代碼到測試分支也必須將我的實(shí)現(xiàn)類A修改傳參類型和返回類型。

但是我們都在不同的分支上開發(fā),我是沒有他定義的類型ccc.cc,ddd.dd的。

我又不能直接把他定義的ccc.cc,ddd.dd要過來,在我自己的分支上開發(fā),一是因?yàn)樾枨蟛灰恢?,小A的上線周期會比我長,二是這種操作本身就不規(guī)范。

解決問題

從代碼設(shè)計上優(yōu)化

我們想到的方案是合理使用interface

把工廠類中要實(shí)現(xiàn)的接口方法的入?yún)⒑统鰠⒃O(shè)置為interface{}類型

package factory

type xxx interface {
   GetXxxx(ctx context.Context, req interface{}) (res interface{}, err error)  
}

這樣就比較容易進(jìn)行擴(kuò)展了。

從git操作上優(yōu)化

但是入?yún)⒑统鰠⒃O(shè)置為interface{}類型的辦法并沒有從根本上解決我們的問題。

原因是這樣的:

小A的需求是整體優(yōu)化工廠類和各個實(shí)現(xiàn)類的入?yún)ⅰ⒊鰠?,?yōu)化內(nèi)部邏輯,抽取方法。小A的修改導(dǎo)致和我的實(shí)現(xiàn)邏輯有比較大的沖突。

但是他的git提交又在我之前提交到了測試環(huán)境,導(dǎo)致我無法提交我的代碼,如果要提交就要解決各種沖突。解決沖突就要按照小A的優(yōu)化邏輯去改,給到測試同學(xué)測的有和我自己分支的不一致。難頂啊。考慮到小A的修改暫時不需要提測,上線周期也比較長。

最終的辦法是這樣的

從遠(yuǎn)程的測試分支拉取了一個備份分支,刪除遠(yuǎn)程的測試分支

把我本地需要測試的分支提交到測試分支,交付測試。

git 重命名遠(yuǎn)程分支

1.先重命名本地分支

git branch -m 舊分支名稱  新分支名稱

2.刪除遠(yuǎn)程分支

git push --delete origin 舊分支名稱

3.上傳新修改名稱的本地分支

git push origin 新分支名稱

4.修改后的本地分支關(guān)聯(lián)遠(yuǎn)程分支

git branch --set-upstream-to origin/新分支名稱

到此這篇關(guān)于go語言實(shí)現(xiàn)Git 重命名遠(yuǎn)程分支  的文章就介紹到這了,更多相關(guān)go Git 重命名 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Go多線程中數(shù)據(jù)不一致問題的解決方案(sync鎖機(jī)制)

    Go多線程中數(shù)據(jù)不一致問題的解決方案(sync鎖機(jī)制)

    在Go語言的并發(fā)編程中,如何確保多個goroutine安全地訪問共享資源是一個關(guān)鍵問題,Go語言提供了sync包,其中包含了多種同步原語,用于解決并發(fā)編程中的同步問題,本文將詳細(xì)介紹sync包中的鎖機(jī)制,需要的朋友可以參考下
    2024-10-10
  • Go經(jīng)典面試題匯總(填空+判斷)

    Go經(jīng)典面試題匯總(填空+判斷)

    這篇文章主要介紹了Go經(jīng)典面試題匯總(填空+判斷),本文章內(nèi)容詳細(xì),具有很好的參考價值,希望對大家有所幫助,需要的朋友可以參考下
    2023-01-01
  • go語言中的二維切片賦值

    go語言中的二維切片賦值

    這篇文章主要介紹了go語言中的二維切片賦值操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • golang開發(fā)中channel使用

    golang開發(fā)中channel使用

    channel[通道]是golang的一種重要特性,正是因?yàn)閏hannel的存在才使得golang不同于其它語言。這篇文章主要介紹了golang開發(fā)中channel使用,需要的朋友可以參考下
    2020-09-09
  • Go批量操作excel導(dǎo)入到mongodb的技巧

    Go批量操作excel導(dǎo)入到mongodb的技巧

    這篇文章主要介紹了Go批量操作excel導(dǎo)入到mongo,包括選擇命令行包,讀取配置連接數(shù)據(jù)庫的方法,本文示例代碼相結(jié)合給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-03-03
  • 基于context.Context的Golang?loader緩存請求放大問題解決

    基于context.Context的Golang?loader緩存請求放大問題解決

    這篇文章主要為大家介紹了基于context.Context的Golang?loader緩存請求放大解決方案,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • Go語言使用組合的方式實(shí)現(xiàn)多繼承的方法

    Go語言使用組合的方式實(shí)現(xiàn)多繼承的方法

    這篇文章主要介紹了Go語言使用組合的方式實(shí)現(xiàn)多繼承的方法,實(shí)例分析了多繼承的原理與使用組合方式來實(shí)現(xiàn)多繼承的技巧,需要的朋友可以參考下
    2015-02-02
  • Golang10進(jìn)制轉(zhuǎn)16進(jìn)制的幾種方法代碼示例

    Golang10進(jìn)制轉(zhuǎn)16進(jìn)制的幾種方法代碼示例

    這篇文章主要給大家介紹了關(guān)于Golang10進(jìn)制轉(zhuǎn)16進(jìn)制的幾種方法,進(jìn)制轉(zhuǎn)換是Golang的一些基本操作,文中通過實(shí)例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • 在Go中構(gòu)建并發(fā)TCP服務(wù)器

    在Go中構(gòu)建并發(fā)TCP服務(wù)器

    今天小編就為大家分享一篇關(guān)于在Go中構(gòu)建并發(fā)TCP服務(wù)器的文章,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-10-10
  • 淺談go中cgo的幾種使用方式

    淺談go中cgo的幾種使用方式

    本文主要介紹了淺談go中cgo的幾種使用方式,文中根據(jù)實(shí)例編碼詳細(xì)介紹的十分詳盡,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03

最新評論

二连浩特市| 沙湾县| 沧源| 沙洋县| 西青区| 班玛县| 大埔区| 横山县| 行唐县| 清水河县| 大宁县| 石屏县| 富顺县| 保康县| 时尚| 美姑县| 博罗县| 宁阳县| 土默特右旗| 元朗区| 乐陵市| 杭锦后旗| 韶关市| 浦江县| 常德市| 盐城市| 石景山区| 广宁县| 清水县| 衢州市| 象州县| 苏尼特右旗| 衡阳市| 安顺市| 卢龙县| 五常市| 荣成市| 会泽县| 北京市| 德清县| 巨野县|