如何将文件夹中的所有文件推送到所有git分支

时间:2016-12-26 13:43:29

标签: git directory git-branch git-push remote-branch

我有很多git分支。

我保存了apk文件的目录/文件夹。

但每当我添加一个apk /文件并推送它 (1. git add, 2. git commit -m "", 3. git push), 它被推送到我工作的当地分支机构。

而不是这个我想将该文件推送到所有分支,所以我该怎么做?

此外,该文件夹中还有很多apk文件仅存在于该特定分支中。

那么如何让它们可用于所有分支(即将所有这些apk文件推送到所有分支)?

2 个答案:

答案 0 :(得分:2)

默认情况下,您提交到分支,并将所有提交推送到远程仓库。

如果您希望该提交(假设它只包含您的新文件)在所有其他分支中可见,则一种方法是 git cherry-pick 提交给其他分支。< / p>

如果你刚刚将提交创建到master,你可以切换分支和樱桃选择(提交在master之上):

git checkout another_branch
git cherry-pick master

但是,如果您打算在某个时候将其他分支合并回master,则不建议这样做,因为这会引入 duplicate commit

要阅读更多内容,请参阅“git commit to all branches”。

将当前分支合并到其他分支更好(参见“do a git cherry-pick in multiple branches”),但并不总是可行/想要,因为它会将所有提交从一个分支合并到另一个分支。

实际的正确的解决方案只需结帐到另一个分支,添加您的文件(再次在那里),制作一个那里提交(再次) 其他分支重复

答案 1 :(得分:1)

如果您使用源树应用程序,则可以一次推送多个分支。

https://answers.atlassian.com/questions/314016/push-to-multiple-remotes-with-sourcetree