git签出仅将另一个分支中的已修改文件签出到当前

git签出仅将另一个分支中的已修改文件签出到当前,git,Git,我对Git相当陌生,以下是我的情况: 我有一个主开发回购的目的是使一个网站 我有一个分支的回购,这是专门为我想上传到服务器的文件。(主文件的子集) 我想在主分支中开发,然后当我准备好时,从主分支到服务器分支签出服务器文件的最新版本 我意识到我可以git签出主文件\u路径,但如果git能够 查看服务器分支中存在哪些文件 从主分支查看这些文件的最新版本 有办法做到这一点吗?还是更好(更快)的工作流程 谢谢 git ls-files | sed 's/.*/git checkout master

我对Git相当陌生,以下是我的情况:

  • 我有一个主开发回购的目的是使一个网站
  • 我有一个分支的回购,这是专门为我想上传到服务器的文件。(主文件的子集)
  • 我想在主分支中开发,然后当我准备好时,从主分支到服务器分支签出服务器文件的最新版本
我意识到我可以
git签出主文件\u路径
,但如果git能够

  • 查看服务器分支中存在哪些文件
  • 从主分支查看这些文件的最新版本
  • 有办法做到这一点吗?还是更好(更快)的工作流程

    谢谢

    git ls-files | sed 's/.*/git checkout master -- "&"/' | sh -x
    
    或者(我在想什么)


    很抱歉,原文的语法错误。这一个有效。@Josh-我恢复了你的编辑,因为里面没有bash-ism。是否有某些特定的shell无法使用?这些命令在Windows shell下无法使用。问题被标记为[git]Hm。我认为POSIX shell是给定的。Git附带一个,所以如果你真的有Git的话,总会有一个可用的。我以前已经指出过GNU扩展,我不认为git依赖于任何Bashism,但我不记得有人指出他们在这里使用的是POSIX shell,而Windows不知何故还没有参与讨论。你能给我举几个例子吗?
    git ls-files | xargs git checkout master --