You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 19 Next »

OpenIFS is available for download as a git repository. Licensed users may request access to this repository if they prefer to work with git, though we expect most to download OpenIFS as compressed tar files.

Developers/users who want to work closely with the OpenIFS team and provide updates to the model are encouraged to use the git repository to submit branches. Please read the instructions on this page for further details.

Note that the git repository only hosts the source code. All the data files to run OpenIFS must still be downloaded from the ftp site.

ECMWF Stash git repository

ECMWF use software called 'Stash' to provide a web interface to git repositories. It works much like other web interfaces for git, such as github, and is not to be confused with the git stash command.

Users must have an account and password configured for ECMWF Stash before access can be granted.

Login and authentication

there are actually two ways of login in http://software.ecmwf.int/stash

The problem is that to access with git and https (not ssh?) you have to use your JIRA password. And I think were all the problem was. (The same applies to https://software.ecmwf.int:8443/stash/)

Stash setup

Ensure user has an account and password for Stash.  If no userid, go to old.ecmwf.int/login and register. I then need to add this new user to the repository if they are outside ECMWF

Then go to  -  https://software.ecmwf.int/stash/login.

If user has not yet set a password, or needs a password reset, they need to navigate to JIRA (go to software.ecmwf.int and click on Issues tab). They should be logged out to do this. Once on JIRA, click 'login' and then click on the "Can't access your account?" link which will send them an email describing how to reset the password. This is also easiest way to change the password.

Once password is set, make sure userid and password work ok and the user can login to stash and see the OpenIFS git repository.

More detailed information is available.

from Daniel:

The passwords can not be set in Stash, it has to be done in JIRA that acts as a Directory Server for Stash.
So you have to go to https://software.ecmwf.int/issues and set the password there. It should sync to Stash after 15 minutes or so.

 

Cloning

To clone the repository at the remote site (once above login is successful):

mkdir ecmwf
cd ecmwf
git clone https://software.ecmwf.int/stash/scm/oifs/openifs.git
cd openifs
git checkout release/v04        # or whichever release required.

This will prompt for username and password and create a directory 'openifs' in 'ecmwf'.

Use 'ssh' protocol if within ECMWF as https doesn't work.

That's it!

Example email to users

Should you want to clone the git repository for OpenIFS, here's how:

1. If you don't have an account on the ECMWF website go to old.ecmwf.int/login and self register.

2. Once you have a userid, you need to set the password on the website hosting 
the repositories. If you don't have one, or have forgotten, simplest way of doing this is to go
to the page: https://software.ecmwf.int/issues and click on 'Can't access your account?'. This will forward an email to you with a web address
to reset (or create) the password. 3. Once the password is set, test it by logging in to the https://software.ecmwf.int/stash. You should see the OpenIFS
project listed. 4. To clone on your workstation is then easy: mkdir ecmwf cd ecmwf git clone https://software.ecmwf.int/stash/scm/oifs/openifs.git

 which will prompt for username & password. Then you'll get a complete clone of the repository.
You can then create branches and push them back to me if you want to!
 

5. To work with an OpenIFS release once you have the git repository:

    git checkout release/v04

Configure Git for the first time

git config --global user.name "Glenn Carver"
git config --global user.email "Glenn.Carver@ecmwf.int"

Working with your repository

I just want to clone this repository

If you want to simply clone this empty repository then run this command in your terminal.

git clone ssh://git@software.ecmwf.int:7999/oifs/contrib.git

My code is ready to be pushed

If you already have code ready to be pushed to this repository then run this in your terminal.

cd existing-project
git init
git add --all
git commit -m "Initial Commit"
git remote add origin ssh://git@software.ecmwf.int:7999/oifs/contrib.git
git push origin master

My code is already tracked by Git

If your code is already tracked by Git then set this repository as your "origin" to push to.

cd existing-project
git remote set-url origin ssh://git@software.ecmwf.int:7999/oifs/contrib.git
git push origin master

git workflows discussion:  http://www.atlassian.com/git/workflows#!workflow-centralized

  • No labels