我在一个目录中做了一堆更新,并希望添加它们,但它们位于我的.gitignore中的目录旁边。不应该只是忽略而不是抱怨吗?
如何添加所有内容并跳过被忽略的内容?
git add
答案 0 :(得分:2)
根据documentation,--ignore-errors
标志只会使命令正常工作。
如果因索引错误而无法添加某些文件,请不要中止操作,而是继续添加 其他。该命令仍将以非零状态退出。该 配置变量add.ignoreErrors可以设置为true 这是默认行为。
<强>更新强>
在这种情况下,这不起作用,我猜是因为assets/*
参数由shell扩展,因此git add
收到的实际参数是扩展的文件和目录列表,所以失败是明确的。
我已经尝试过这个命令效果很好:
$ git add assets
即使没有选项--ignore-errors
也可以使用,因为它不会尝试在assets
下面添加被忽略的目录。
答案 1 :(得分:0)
当您使用通配符.plot {
min-height :480px;
height :480px;
overflow: auto;
}
时,它将在Unix系统上由您的shell进行扩展。因此,运行describe('myAppCtrl', function() {
var scope, controller, httpBackend;
beforeEach(module('myApp'));
beforeEach(inject(function($rootScope, $controller, $httpBackend) {
scope = $rootScope;
controller = $controller;
httpBackend = $httpBackend;
}));
it('should show the text of element',function() {
expect($('#testtext')).toBe('First Angular JS App');
});
});
相当于在*
下明确添加文件。
例如,如果我有两个文件:
git add assets/*
然后运行assets/avatars
扩展为:
assets/file1.txt
assets/avatars/file2.txt
所以git抱怨你指示它添加一个被忽略的文件。如果你想避免这个消息,你可以引用git add assets/*
来允许git进行通配。这将指示git扩展您的路径,注意git add assets/file1.txt assets/avatars/file2.txt
文件。例如:
*
不会生成任何警告,只会生成相应的文件,在此示例中为.gitignore
。