繁体   English   中英

如何将特定文件从一个分支合并到主分支?

[英]How to merge a specific file from one branch to master?

我有一个名为 test 的分支,我想将它合并到 master。 我在 shell 脚本中使用下面的 git diff 命令来获取更改的文件名

->master=git diff release/1..master --name-only。 ':(排除) .yml' ':(排除) .yml' ':(排除)*.gitmodules'

主变量具有所有文件名,例如 test1.py test2.py 和 template/test3.py

我尝试使用以下命令但无法合并它

git 结账主控

git 结帐发布/1 $master

您能否让我知道将特定文件夹中的特定文件合并到主文件的命令。

如果您只需要从 branchX 获取一个文件到当前一个文件:

git checkout branchX -- path/to/file

然后提交。

如果需要创建合并提交但删除除一个文件之外的任何更改(不推荐!)

git merge branchX --no-commit
git checkout -f  ## drop any changes
git checkout branchX -- path/to/file
git commit  ## create merge commit with the only file taken from source branch

您需要从计划与主分支合并的分支创建拉取请求。 将所有本地分支更改推送到远程,然后创建拉取请求以与 master 合并。

例如,如果您的本地分支名称是 fea/local_1,那么在您的更改之后运行以下命令。

git add file_name 

添加特定文件或

git add .

添加所有。 添加文件后,然后使用此命令提交更改。

git commit -m "commit message"

然后使用以下命令将所有更改推送到远程

git push origin fea/local_1

现在,在此 go 到您的版本控制服务器位存储桶或 git 之后,具体取决于您使用的创建从分支到主分支的 PR。

您可以在主分支上使用restore命令: git restore --source=branch_name /path/to/file

这是一种滥用,因为这个命令在语义上并不意味着做这些事情,但它会起作用。 同样在文档中,这仍然是实验性的,行为可能会改变。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM