HumanBrainProject / openMINDS

openMINDS comprises a set of metadata models for research products in the field of neuroscience.
MIT License
40 stars 13 forks source link

do we need a .gitignore on all openMINDS repos? #38

Open lzehl opened 1 year ago

lzehl commented 1 year ago

@HumanBrainProject/openminds-developers please discuss ;)

imo: I think the submodules should be kept clean whereever they are. I don't see the need for a gitignore or if we need one it should be the same across all submodules.

skoehnen commented 1 year ago

Hmm, I don't see an advantage for this. What would we put in it? There are no build artifacts, cache files or logs, that are generated while interacting with the repositories.

One could argue that we should put the temp files of text editors in there (like vim or emacs), but I don't think they are widely used by us (and they could put it in their local .git/info/exclude).

If anything we need an allow-list, that blocks anything that is not *.schema.tpl.json or md ;) But I don't think that can be done with git. We could think about adding this as a test, but have wrongly committed files been a problem in the past?

lzehl commented 1 year ago

@skoehnen it's more about getting rid of unnecessary .gitignore files or .gitignore entries. So you are voting to get rid of them in the our sumodules if I interpret your comment correctly :)

skoehnen commented 1 year ago

@lzehl Yes, I am voting to get rid of them.

I did not know we had .gitignore files in the submodules. Let me take a look, what files are getting ignored.

skoehnen commented 1 year ago

We got .gitignores in these submodules:

And the main repository.

The main repository and ephys have the auto-generated python ignore-list. I think in the main repository this came from our generator experiments, so I don't think we need it anymore. Not sure about the ephys module, I could not find python code in there.

For the other modules I created a set of the entries and added my assumption what they are:

*~       # vim backup files
target   # Folder for generated JSON-schemas
expanded # Folder for expanded schemas
venv     # Probably python virtual environments

The vim backup files could be added to the local ignore rules, so they don't need to be in the global ignore rules. Please correct me if I am wrong but target and expanded shoud normally not occur in a submodule, right? And I am not sure what happened to get venv added ;)

lzehl commented 1 year ago

TODO: get rid of all gitignore in submodules (meaning metadata model github repos)