我收到了有关Python首次编程任务的反馈。一般来说,这是相当不错的,但我不完全理解一点。为了标记作业,我的老师通过github克隆了我的回购。反馈建议使用“不上传.gitignore本身的适当的.gitignore”。
有人可以为我扩展这一点吗?仍然试图熟悉git并且不完全理解gitignore。
答案 0 :(得分:3)
.gitignore文件中的每一行都建立一个模式。在决定是否应该忽略文件时,Git会查看它是否与.gitignore文件中的某个模式匹配。
如果您将文本type params = {
util?: Function;
utilName?: string;
other?: string;
};
type utilParams = 'util' | 'utilName';
class field {
name: string;
required: boolean;
value: any;
params: params;
constructor(name: string, required: boolean, value: any, params: params) {
this.name = name;
this.required = required;
this.value = value;
this.params = params;
}
}
type coreOptional<T, U extends keyof T> = {
required?: boolean;
value?: T[U];
};
class test<T> {
test<U extends keyof T>(name: keyof T, optional: coreOptional<T, U> & Partial<Pick<params, utilParams>>) {
let onlyParams: Partial<Pick<params, utilParams>> = { ...optional };
return new field(name, optional.required || false, optional.value, onlyParams);
}
}
let myTest = new test<{ one: Function; two: Function }>();
myTest.test('one', { value: '' }); //works!
myTest.test('one', { value: false}); //errors like it should.
添加到.gitignore文件中,.gitignore文件本身将无法在Git版本控制系统中进行控制,也不会上传到远程存储库。
然而,在我的拙见中,控制Git中的.gitignore文件并不是件坏事。这意味着存储库的所有用户都可以访问相同的配置。