- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有很多 git 分支。
有一个目录/文件夹,我在其中保存 apk 文件。
但是每当我添加一个 apk/文件并推送它时(1.git add, 2.git commit -m "", 3.git push)
,它被推送到我工作的本地分支机构。
我想将该文件推送到所有分支,而不是这个,那么我该怎么做呢?
在那个文件夹中也已经有很多 apk 文件,它们只存在于那个特定的分支。
那么我怎样才能使它们对所有分支可用(即将所有这些 apk 文件推送到所有分支)?
最佳答案
默认情况下,您提交到一个分支,并将所有提交推送到远程仓库。
如果您希望该提交(假设它只包含您的新文件)在所有其他分支中可见,一种方法是 git cherry-pick
提交给其他分支。
如果您刚刚将该提交创建到 master
中,您将切换分支和 cherry-pick(在 master
之上的提交):
git checkout another_branch
git cherry-pick master
但是,如果您打算在某个时候将该其他分支 merge 回 master,则不建议这样做,因为这会引入 duplicate commit .
要阅读有关该主题的更多信息,请参阅“git commit to all branches”。
将当前分支 merge 到其他分支更好(参见“do a git cherry-pick
in multiple branches”),但并非总是可行/需要,因为它会将所有提交从一个分支 merge 到另一个分支。
一个实际的正确的解决方案只是checkout到另一个分支并添加你的文件(再次在那里),制作一个在那里提交(再次)。
并对其他分支重复。
关于git - 如何将文件夹中的所有文件推送到所有git分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41332179/
我是一名优秀的程序员,十分优秀!