is used to enable markdown editing in GeneNetwork.
There are configuration that are needed to get the system to work as expected:
With these settings, we should be able to make changes to make edits. These edits, however, do not get pushed upstream.
Looking at the code
we see both the settings above being used, and we can further have a look at
With the above, we could, hypothetically, do a command like:
git -C ${CURRENT_REPO_PATH} push ${REMOTE_REPO_URI} master
where REMOTE_REPO_URI can be something like "appuser@git.genenetwork.org:/home/git/public/gn-guile"
That means we change the (git-invoke …) call seen previously to something like:
(git-invoke +current-repo-path+ "push" +remote-repo-url+ "master")
and make sure that the "+remote-repo-url+" value is something along the URI above.
We need to fetch and rebase with every push, to avoid conflicts. That means we'll need a sequence such as the following:
(git-invoke +current-repo-path+ "fetch" +remote-repo-url+ "master") (git-invoke +current-repo-path+ "rebase" "origin/master") (git-invoke +current-repo-path+ "push" +remote-repo-url+ "master")
The tests above work with a normal user. We'll be running this code within a container, so we do need to expose a specific private ssh key for the user to use to push to remote. This also means that the corresponding public key should be registered with the repository server.