我有这样的情况。一位开发人员正在 ./model 目录中工作,他正在向其中添加新文件,然后提交新的 model_files 并推送到 origin/master
现在第二个开发人员也在同一目录 ./model (在他自己的工作目录中)中编写模型。
假设开发者 A 创建了这样的模型:
./model/m1.php
./model/m2.php
现在开发者 B 创建了这样的模型:
./model/m3.php
./model/m4.php
假设开发人员 A 提交更改并推送到 origin/master,因为开发人员 B 需要 m1.php 和 m2.php 模型来完成他的工作。
开发人员 B 还在项目中创建了许多其他更改/文件夹/文件,不仅在 ./models 目录中,而且他的工作还没有完成。如果他合并或拉动,那么他的工作就会丢失。
开发人员 B 如何仅检索开发人员 A 创建的文件夹 ./model 中的新模型文件。我在开发人员 B 机器上尝试过这样的事情。我假设开发人员 B 没有提交 m3.php 和 m4.php 因为还没有以这些文件结束。他只需要在 ./models 目录中有来自开发人员 A 的新文件(m1.php 和 m2.php)。在开发人员 B 机器上,我尝试了:
git fetch origin
git checkout origin/master ./model/*
但不幸的是,错误给了我
error: pathspec 'model/m3.php' did not match any file(s) known to git.
error: pathspec 'model/m4.php' did not match any file(s) known to git.
但如果我执行:
git checkout origin/master ./model/m1.php ./model/m2.php
然后它可以工作,但这假设我必须知道我需要从这个分支签出的确切文件名。
有人可以帮我吗?谢谢。