Git修改了master和branchs中的文件

Git修改了master和branchs中的文件,git,branch,difference,Git,Branch,Difference,我两周前开始使用Git。 现在我只做承诺和推动。 我犯了一个错误,我创建了一个分支。 现在我有了一个文件,比如“main.js”,它在两个分支中都有重要的更改 一般来说:我有master,即生产,然后是dev分支和热修复分支。 我已经在dev中更改了main.js,然后我必须在热修复中更改它以解决一个bug,然后我将热修复合并到master中。 现在,master和dev已经否认了main.js。 如何维持这样的局面 编辑: 也许我用git完全错了。。。 我举了一些实际例子: master-ma

我两周前开始使用Git。 现在我只做承诺和推动。 我犯了一个错误,我创建了一个分支。 现在我有了一个文件,比如“main.js”,它在两个分支中都有重要的更改

一般来说:我有master,即生产,然后是dev分支和热修复分支。 我已经在dev中更改了main.js,然后我必须在热修复中更改它以解决一个bug,然后我将热修复合并到master中。 现在,master和dev已经否认了main.js。 如何维持这样的局面

编辑: 也许我用git完全错了。。。 我举了一些实际例子:

master-main.js-创建于2017年1月1日

function main() { 
    start(); 
}
dev-main.js-2017年1月7日修改

function main() { 
    new_stuff_1();
    start(new_param);
    new_stuff_2();  
}
修补程序-main.js-修改于2017年1月10日

function main() { 
    hotfix();
    start();
}
在所有合并之后,我希望:

function main() { 
        hotfix();
        new_stuff_1();
        start(new_param);
        new_stuff_2();  
    }

hotfix
分支中时,更新
main.js
文件并提交这些更改。 然后
checkout
dev
分支

git签出开发人员

将修补程序中的更改合并到开发人员中


git merge热修复程序

在您的情况下,既然您已经完成了修复程序并将其合并到master,那么您还必须在dev分支中合并热修复程序。这样,您就可以合并对main.js所做的修改


这里有一个关于如何在git上使用分支的好文档:。

不是我的反对票,但不清楚您的确切问题是什么。在Git中,文件在分支之间总是“不一致”,这是正常的,这里没有太多问题。只需按相反的顺序将分支合并回它们的源,确保您想要的更改被保留,并且您应该完成它。