Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

version control: what should be on git, directory structure, .gitignore #1

Open
3 tasks
tavareshugo opened this issue May 13, 2022 · 0 comments
Open
3 tasks

Comments

@tavareshugo
Copy link

Covering three somewhat related points (sorry if I missed these in the materials somewhere):

  • Clarify that data should not be under version control
  • Add some suggestions about organising files/folders within a project directory
  • Add note about .gitignore and its uses

Add a note somewhere about what files should or should not be under version control with Git.
Mainly, data files and binary documents should live elsewhere (e.g. data repositories released with publications).

Large files that can be recreated from code do not need to be under version control - the code that generates them is what is kept under version control and can be used to recreate them.

We could give some advice on structuring a project directory, to tie in with the version control process and insisting that raw data should be left alone and we should try (as much as possible) to make our results able to be recreated from code.
For example:

my_project
   |_ data             # raw data - never changed (read-only preferably)
   |_ documents  # misc documents such as word, presentations, etc.
   |_ results         # results of the analysis (these files can usually be re-created from data + code)
   |_ scripts         # analysis code

An with this we could motivate and introduce the .gitignore, so for the example above we could have:

data
documents
results
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant