Node.js 如何在git的目录中添加一些特定的文件?
我正在尝试创建一个脚本,该脚本只为某些目录中的特定文件添加更改,例如Node.js 如何在git的目录中添加一些特定的文件?,node.js,git,Node.js,Git,我正在尝试创建一个脚本,该脚本只为某些目录中的特定文件添加更改,例如文件a、文件C和文件E 在package.json中 ./main ../firstDirectory ../file_A.js ../file_B.js ../file_C.js ../file_D.js ../file_E.js “脚本”:{ 添加:“git添加” } 我尝试过类似于git add./main/firstDirectory/*.js的方法,但这将添加所有文件。
文件a
、文件C
和文件E
在package.json中
./main
../firstDirectory
../file_A.js
../file_B.js
../file_C.js
../file_D.js
../file_E.js
“脚本”:{
添加:“git添加”
}
我尝试过类似于git add./main/firstDirectory/*.js
的方法,但这将添加所有文件。我是否可以指定任何路径模式,以便git add知道只添加特定文件的更改
更新:
尽管这样做有效:
git add main/firstDirectory/file_A.js main/firstDirectory/file_C.js main/firstDirectory/file_E.js
我正在寻找一个动态的解决方案(模式),所以如果以后考虑添加更多的文件,我就不必更新脚本。
我已经试了很多次了,但都没有找到答案。如果有任何帮助,我将不胜感激。试试看
"scripts": {
add: "git add <path pattern>"
}
由于-C
选项不会将cd放入正确的文件夹中,因此不带引号的*.js
也可以
见“”
仅当文件已更改时,才会添加所有文件
但是,如果希望不跟踪其他文件(意味着永远不要首先添加它们),则可以将要监视的文件列为白名单:
在该文件夹中的.gitignore中写入:
git -C ./main/firstDirectory add '*.js'
这样,即使其他文件发生更改,它们也不会被*.js
添加
确保未跟踪这些文件:
*
!file_A
!file_C
!file_D
!file_E
git add main/firstDirectory/file_A.js main/firstDirectory/file_C.js main/firstDirectory/file_E.js
?感谢您的快速响应。这是可行的,但我正在寻找更具动态性的东西,因此我不必不断更新脚本。我认为这仍然会添加所有文件(文件A、文件B、文件C、文件D、文件E)。但是,我只想添加文件A、文件C和文件E。我将它们放在一个.gitignore文件中,但我一直遇到这样的错误:以下路径被一个.gitignore文件忽略:
请确保在命令似乎未正确运行之前未跟踪这些文件。它不断地抛出错误。这就是我如何使用它的“脚本”:{add:“git-C./main/firstDirectory add*.js”}`用于检查文件是否被忽略,git check ignorr-v--afile
cd main/firstDirectory
git rm --cached -- *.js