Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php GIT——假定批处理文件未更改_Php_Git - Fatal编程技术网

Php GIT——假定批处理文件未更改

Php GIT——假定批处理文件未更改,php,git,Php,Git,我需要--假设除了一个文件夹之外,整个项目都没有改变,但我似乎无法找到方法来批处理所有文件 我能想到的唯一方法就是使用PHP,比如 $dir = getcwd(); $directory = new \RecursiveDirectoryIterator($dir,\RecursiveDirectoryIterator::SKIP_DOTS); $iterator = new \RecursiveIteratorIterator($directory,\RecursiveIterator

我需要--假设除了一个文件夹之外,整个项目都没有改变,但我似乎无法找到方法来批处理所有文件

我能想到的唯一方法就是使用PHP,比如

$dir = getcwd();
$directory = new \RecursiveDirectoryIterator($dir,\RecursiveDirectoryIterator::SKIP_DOTS);
    $iterator = new \RecursiveIteratorIterator($directory,\RecursiveIteratorIterator::LEAVES_ONLY);

    foreach ($iterator as $fileinfo) {
        shell_exec('--assume-unchanged '.$fileinfo);
    }

有更简单的方法吗?

如果您已经添加并提交了文件夹,您不想假定该文件夹没有更改,您可以这样做

find . -type f -exec git update-index --assume-unchanged {} \;
如果您在根目录上执行此操作,它仍然会抛出很多错误,因为它将尝试假定即使是.git文件夹中的引用也没有更改