What CABLE branches do you need to move to GitHub?

As part of transitioning CABLE from SVN to GitHub, we will want to clean up the CABLE repository of unnecessary branches. There are 2 categories of branches we do not want to transfer:

  • stale branches, i.e. a branch that is not actively being worked on anymore.
  • branches to record a configuration, i.e. a branch with only changes to namelists and other input files.

We realise this is a significant change of practice and we may need to be flexible at the start to allow people some time to adapt. As such, we would like CABLE users to identify and share with us what current code branches they will need once we move CABLE to GitHub.

:exclamation: The SVN repository will be accessible after the transition and it will be possible to transfer forgotten branches afterwards. However, getting most branches right at the start will save time and effort for the CABLE maintainers. :exclamation:

:warning: At this time, we will not transfer the data from CABLE-AUX. The SVN repository will still be the source of ancillary data for CABLE. :warning:

What we need you to do

If you have branches you would like to keep, please reply to this topic before Friday 27 October with the URL to the branch you want to keep. Please indicate a ticket number if there is a TRAC ticket associated with that branch. If the branch does not have recent commits, please indicate why you would like to keep the branch.

:spiral_notepad: Note that some branches might be replaced by git tags as the use of tags and branches is slightly different between git and SVN. This will be advertised appropriately :spiral_notepad:

What do I do if I’m unsure if a branch meets the criteria?

Please answer on this topic with the branch and the reasons you would like to keep it. We will let you know what is the best option for that specific branch.

What do I do if I need to create a branch after 27 October but before the move to git?

We will update the list of branches at the time of the transition to include all recent, non-empty branches in addition to the branches requested. But feel free to post on this topic past 27 October as well to highlight the branch.

What do I do if I am actively working on a branch under SVN at the time of the transition?

Here is our advice:

  1. Make sure all your changes to your SVN branch are committed to the SVN repository on the day before the transition.
  2. Do NOT work on your SVN branch on the transition day.
  3. The day after the transition, clone the GitHub repository, checkout your branch and continue your work there using git and GitHub. At this stage, you can safely delete your SVN-based work directory (assuming you have committed everything to SVN before the transition!).

What do I do if I have branches to record configurations?

If you do not want to change these configurations, you can keep these branches on SVN since you will keep read access.

If you want to modify these configurations or ensure a longer-term storage for them, the best is for you to save these branches as git repository(ies) under your GitHub space. Saving the branches within a single repository might be the easiest option, but having a repository per branch is possible if preferred. This can be done at any time before or after the transition to GitHub since the SVN repository will keep reading access.

What do I do if I have branches or know of branches used for code references in publications?

The SVN repository will be kept for 7 years so that the references in publications stay valid. These branches do not need to be transferred to GitHub.

Branches to transfer

Branch name TRAC ticket Git branch or tag? Requestor Branch URL
CABLE-POP_TRENDY branch Jürgen Knauer, Matthias Cuntz, Pep Canadell, Benjamin Smith, Ian Harman https://trac.nci.org.au/svn/cable/branches/Share/CABLE-POP_TRENDY
NESP2pt9_BLAZE branch Pep Canadell, Benjamin Smith, Ian Harman, Jürgen Knauer, Matthias Cuntz https://trac.nci.org.au/svn/cable/branches/Share/NESP2pt9_BLAZE
NESP2pt9_CROP Jürgen Knauer, Tammas Loughran / – cable
BLAZE_9184 branch Ian Harman, Yohanna Villalobos, Lars Nieradzik https://trac.nci.org.au/trac/cable/browser/branches/Users/inh599/BLAZE_9184
173-thresholds-in-albedo (GitHub issue: 173) 334 branch Ian Harman https://trac.nci.org.au/trac/cable/browser/branches/Users/inh599/Ticket334
Ticket 337 (this ticket is closed since #359 implemented the change, branch might not be needed) 337 branch Ian Harman https://trac.nci.org.au/trac/cable/browser/branches/Users/inh599/Ticket337
171-bug-in-offline-zenith-angle-calculation (GitHub issue: 171) 339 branch Ian Harman, ACCESS user community https://trac.nci.org.au/trac/cable/browser/branches/Users/inh599/Ticket339
CableHydraulics branch Manon Sabot, Martin De Kauwe, Andy Pitman https://trac.nci.org.au/trac/cable/browser/branches/Users/ms8355/CableHydraulics
CABLE-2.4 tag? Claire Carouge https://trac.nci.org.au/svn/cable/tags/CABLE-2.4-ACCESS-ESM1.5
CABLE-2.5 tag? Claire Carouge https://trac.nci.org.au/svn/cable/tags/CABLE-2.5-ACCESS-CM2
DevBr-1 branch Ramzi Kutteh https://trac.nci.org.au/svn/cable/branches/Users/rk4417/DevBr-1
DevBr-2 branch Ramzi Kutteh https://trac.nci.org.au/svn/cable/branches/Users/rk4417/DevBr-2
Marks_latest_branch_with_fixes_mmy_trunk branch Mengyuan Mu https://trac.nci.org.au/trac/cable/browser/branches/Users/mm3972/Marks_latest_branch_with_fixes_mmy_trunk

Our branches to keep, which you already might be aware of:

Branch name: CABLE-POP_TRENDY
Branch URL: https://trac.nci.org.au/svn/cable/branches/Share/CABLE-POP_TRENDY
TRAC ticket: None
Requestor: Jürgen Knauer, Matthias Cuntz, Pep Canadell, Benjamin Smith, Ian Harman
Git branch or tag?: branch

Branch name: NESP2pt9_BLAZE
Branch URL: https://trac.nci.org.au/svn/cable/branches/Share/NESP2pt9_BLAZE
TRAC ticket: None
Requestor: Pep Canadell, Benjamin Smith, Ian Harman, Jürgen Knauer, Matthias Cuntz
Git branch or tag?: branch

1 Like

You can delete/not transfer all branches under:
https://trac.nci.org.au/svn/cable/branches/Users/moc801/

I would like to keep the crop branch as well. It might be useful for future model development:

Branch name: NESP2pt9_CROP
Branch URL: https://trac.nci.org.au/trac/cable/browser#branches/Share/NESP2pt9_CROP
TRAC ticket: None
Requestor: Jürgen Knauer, Tammas Loughran, maybe others

2 Likes

For safety - we may not successfully merge this into the NESP2pt9_BLAZE branch in time - we should carry over

Branch name: BLAZE_9184
Branch URL: https://trac.nci.org.au/trac/cable/browser/branches/Users/inh599/BLAZE_9184
Trac Ticket: None
Requestor: Ian Harman, Yohanna Villalobos, Lars Nieradzik

Other branches for consideration - it’s a question of whether we transfer across and then look to test/merge or recode. These branches were created as developments while the albedo refactoring occurred but didn’t make it across into the TRUNK as they either (correctly) changed the results or added new science.

Branch name/Trac Ticket: Ticket 334
Branch URL: https://trac.nci.org.au/trac/cable/browser/branches/Users/inh599/Ticket334
Requestor: Ian Harman

Branch name/Trac Ticket: Ticket 337
Branch URL: https://trac.nci.org.au/trac/cable/browser/branches/Users/inh599/Ticket337
Requestor: Ian Harman

Branch name/Trac Ticket: Ticket 339
Branch URL: https://trac.nci.org.au/trac/cable/browser/branches/Users/inh599/Ticket339
Requestor: Ian Harman, ACCESS user community

1 Like

@inh599 I think it would make more sense to rename the “Ticket” branches with the GitHub issue number after the move. Would that be OK with you?

That’s probably sensible - though we should also include short description of what’s involved to help management of the code base. I’ve already found myself confused on git branch naming a couple of times and that’s just been on the documentation repo.

‘Ticket 337’ or ‘Issue #5’ isn’t really different - but ‘Issue #5: bug fix in cable_zetar’ is - however I don’t know how flexible git is on branch naming, nor how this would impact how the checkout process would work on HPC (where blank spaces in directory names are problematic)

On that topic -

  • Ticket 334 - consistent limits on LAI in albedo code
  • Ticket 337 - bug fixes to cable_zetar
  • Ticket 339 - add option of using JULES coszenith formulae

i.e. this raises the general issue of branch naming and needs to be part of the working practices …

GitHub provides its own scheme for branch naming that people can use with one click. It is the recommendation in the working practices and Ben’s git/GitHub training.

GitHub scheme is: <issue number>-<issue-title> (no # as that’s a comment in shell, don’t need the complication if using the name on the command line). It can be edited before creation if people find their issue title is too wordy.

I would like to keep the following which is still being developed:

Branch name: CableHydraulics
Branch URL: https://trac.nci.org.au/trac/cable/browser/branches/Users/ms8355/CableHydraulics
TRAC ticket: None
Requestors: Manon Sabot, Martin De Kauwe, Andy Pitman

1 Like

We need to keep the ACCESS branches (hopefully as tags…):

Branch name: CABLE-2.4-ACCESS-ESM1.5
Branch URL: https://trac.nci.org.au/svn/cable/tags/CABLE-2.4-ACCESS-ESM1.5
TRAC ticket: None
Requestors: Claire Carouge

Branch name: CABLE-2.5-ACCESS-CM2
Branch URL: https://trac.nci.org.au/svn/cable/tags/CABLE-2.5-ACCESS-CM2
TRAC ticket: None
Requestors: Claire Carouge

I would like to keep my two branches related to the GW work:

Branch name: DevBr-1
Branch URL : https://trac.nci.org.au/svn/cable/branches/Users/rk4417/DevBr-1
TRAC ticket : None
Requestor : Ramzi Kutteh

Branch name: DevBr-2
Branch URL : https://trac.nci.org.au/svn/cable/branches/Users/rk4417/DevBr-2
TRAC ticket : None
Requestor : Ramzi Kutteh

2 Likes

I would like to keep one CABLE branch with groundwater:
Branch name: Marks_latest_branch_with_fixes_mmy_trunk
https://trac.nci.org.au/trac/cable/browser/branches/Users/mm3972/Marks_latest_branch_with_fixes_mmy_trunk
TRAC ticket: None
Requestor: Mengyuan Mu

Thanks @Mengyuan_Mu . Anna was also talking about a VPD branch? Will you need that VPD branch? Will you want to make modifications to it?