A long time ago Oana asked me how come when you switched back to a previously built branch it sometimes had to recompile the libraries and could it be smart enough to use touch in some way to not have to recompile. So I made a bash script that automatically changed PETSC_ARCH with branch changes and recovered the built libraries; thus making changing branches become much less painful, took at long time to get it right :(
Then I went a bit crazy and added support for submitting pipelines without cut and pasting and going to GitLab, checking on pipelines without going to Gitlab, start MR without cut and paste or manually going to Gitlab and automatically using the maint branch when the submitted branch was off maint instead of master (a mistake I make all the time). Plus a bunch of other things. One benefit of this is I now do all my initial testing BEFORE making a MR. Anyways the scripts are horribly crude, but functional, with even a little error checking. Even if you don't like the scripts you might take parts of them that run pipelines without going to Gitlab etc, modify them and use them standalone. Feel free to MR alternative scripts in the repository that we also share. The software can be downloaded with git clone gitlab.com:petsc/petscgitbash <gitlab.com://petsc/petscgitbash> Barry