Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • an LFID account (sign up here)

  • git installed (see: http://www.git-scm.com/downloads)

  • git configured with your name, e-mail address and editor

    git config --global user.name "Firstname Lastname"
    git config --global user.email "email@address.com"
    git config --global core.editor "text-editor-name"
    

    Note: Your name and e-mail address (including capitalization) must match what you entered when creating your LFID account.

  • VIRTUALENV_PIP=23.2.1 pre-commit install-hooks
    an ssh public/private key pair (see the good GitHub docs on generating ssh keys)

  • register in the Gerrit server. See below for detailed instructions. Register your SSH key with Gerrit

  • git-review installed version => 1.28 (see: https://www.mediawiki.org/wiki/Gerrit/git-review#Installation)
    Note:  The older version return the following error.
    The "git review" command has been returning
    remote: error: branch refs/publish/master:
    remote: You need 'Create' rights to create new references.
    remote: User: gvrangan
    remote: Contact an administrator to fix the permissions
    remote:
    remote: Processing changes: refs: 1
    remote: Processing changes: refs: 1, done
    To ssh://git.opendaylight.org:29418/aaa.git
     ! [remote rejected] HEAD -> refs/publish/master (prohibited by Gerrit: not permitted: create)
    error: failed to push some refs to 'ssh://gvrangan@git.opendaylight.org:29418/aaa.git'

Push patches to Gerrit

  1. Open a shell to the directory containing the project repo

  2. Create a local working branch, based on the branch you would like to make changes to.

    git fetch origin
    git checkout -b new_feature_branch origin/masterproduction
    

    Replace origin/masterproduction with whichever remote/branch you need to contribute to. Typically production or master is the latest development branch.

  3. Make the modifications you would like to change in the project

  4. Stage the modified files for commit. (Repeat for all files modified)

    git add /path/to/file
    
  5. Verify the staged files by running git status

  6. Commit the staged files by amending the patch

    git commit -s
    

    Note

    The ‘-s’ argument signs the commit message with your name and email and is a statement that you agree to the Developer’s Certificate of Origin.

  7. Push the patch to Gerrit using one of the 2 methods documented:

    1. Push using git review
    2. Push using git push

...

This output includes a URL to the patch. The number at the end is the patch’s change number.


Commit fails on gitlint-core error

If you get an error when running git commit like "ERROR: Could not find a version that satisfies the requirement gitlint-core==0.1.dev1+gacc9d9d (from gitlint)" try running the following commands and trying again.

pre-commit clean
VIRTUALENV_PIP=23.2.1 pre-commit install-hooks


For Further Information go to following URL's for Git Guide and Gerrit Guide.

...