rootstock
rootstock copied to clipboard
GitHub templates to simplify setup
We can see whether GitHub templates help simplify parts of the setup process.
Okay I am briefly make this repo a template, and then create a new repository using "use this template". Then I will disable the template feature, so we can discuss how GitHub templates operates.
Okay I created https://github.com/dhimmel/rootstock-from-template. The new repo contains a single commit, https://github.com/dhimmel/rootstock-from-template/commit/bc8232dce5d18bba84df68630ddb6d78aea73d0b, whose commit message is "Initial commit". Only the master
branch was copied, not any other branch.
The effect on the GitHub repo page navigation header is nice:
Having "Template" next to the manubot/rootstock
title is nice semantically to let users know that this repo is a template. Therefore, perhaps we should keep rootstock marked as template, even though this is not our recommended SETUP protocol for now?
The main issues I see with changing SETUP to use templates are:
-
It creates additional GitHub dependency as opposed to our existing clone commands which are host-agnostic. This is only a minor issue.
-
It squashes all commits, similar to https://github.com/manubot/rootstock/pull/65. In many cases, this is desirable from an end-user perspective, since they want the commit history to only contain contributions specific to their manuscript. However, it makes the update process more difficult. Will be interested to see discussion that will arise on how to update repos generated from templates when those templates are changed. If we simplify rootstock in the future, such that it is more bare bones, then perhaps losing the ability to update is okay. But for now, I think this would be too much of an issue.
-
Using templates will not simplify SETUP much because much of the complexity comes from steps other than cloning the repository.
Thanks for testing this. It seems like it is something to monitor but will not change our current recommendations for creating a new manuscript. Your point 3 above is critical. A user would still have to rebrand their repository and set up Travis CI after generating a new manuscript from a rootstock template.
Should we disable the template feature for now to avoid confusion about how to create a new manuscript?
Should we disable the template feature for now to avoid confusion about how to create a new manuscript?
Don't have a strong opinion but will disable.
While a template repo doesn't make sense for the current rootstock, development is underway at https://github.com/manubot/template to see if a different design using templates is possible.