Git - 仅将更改的文件拉到单独的文件夹中
Posted
技术标签:
【中文标题】Git - 仅将更改的文件拉到单独的文件夹中【英文标题】:Git - pull only changed files into a separate folder 【发布时间】:2018-01-24 13:36:24 【问题描述】:情况:我想做一个 git pull,但是新文件必须移动到离线机器上。
问题是:是否可以仅将自当前提交以来更改的文件下载到新文件夹中?如果它会保留文件夹结构,那也很棒!
【问题讨论】:
你可以试试这个tosbourn.com/using-git-to-create-an-archive-of-changed-files 这听起来很混乱。 :// this 更好吗? 将记忆棒上的文件夹用作离线机器的远程解决方案吗?您可以 git pull,将 repo 复制到棒,将其粘贴到离线机器中并从棒中 git pull? 哇,我从来没有想过这个问题,但是如果我们能够设法让 pendrive 像 web 应用程序一样可以高速访问,这可能会成功。 【参考方案1】:您可以编写一个 shell 脚本来执行此操作。
假设您在 master
分支上,并且您的更改在 origin
远程:
-
通过
git fetch origin
获取最新更改
将您的工作目录更改为最新更改:git checkout origin/master
确定哪些文件已更改:git diff --name-status master..origin/master
将这些文件复制到新文件夹中
回到原来的分支:git checkout master
【讨论】:
为什么要创建一个临时分支?第 2 步可以简化为git checkout origin/master
(它只是创建一个分离的 HEAD)。
你说得对,我猜只是习惯。结果编辑了我的答案,谢谢!
如果有大约 200 个文件怎么办?我不能只是复制粘贴它们(我的意思是我可以,但很严重)。一定有更简单的方法。以上是关于Git - 仅将更改的文件拉到单独的文件夹中的主要内容,如果未能解决你的问题,请参考以下文章
如何仅将提交的文件名导出到 git 中的 txt 文件? [复制]
Charles:仅将请求正文导出为单独的 JSON 文件 [关闭]