GithubHelp home page GithubHelp logo

genomics-tools's Introduction

GFANZ Genomics Tools

This repository contains a collection of of curated genomics tools and workflows. For more information about the project and instructions on how to use the tools, see the project wiki.

pipeline status

Contributing to this repository

The source code is hosted on https://gitlab.com/gfanz/genomics-tools and a copy is kept in github.com for convenience. Please submit merge requests via GitLab.

If you are not familiar with git, please check the dedicated wiki page: https://gitlab.com/gfanz/genomics-tools/wikis/Git-basic

Proposing a new tool

Thank you for contributing. Please read tools/README.md for more information on the conventions and structure required to add a tool to the repository.

As a researcher, I want to propose a change

  1. Clone the repository: git clone [email protected]:gfanz/genomics-tools.git
  2. Change directory to the cloned repository: cd genomics-tools
  3. Create a new branch: git checkout -b [your-branch-name]
  4. Create a new directory with your tool name.
  5. Copy the contents of the template tool directory into the directory you just created.
  6. Use your favourite code editor to propose your changes
  7. Commit when done: git add . && git commit
  8. Push changes back to Gitlab: git push --set-upstream origin [your-branch-name]
  9. Confirm at https://gitlab.com/gfanz/genomics-tools/pipelines that the continuous integration tests passed for the changes you did
  10. Go to https://gitlab.com/gfanz/genomics-tools/merge_requests and click on Create merge request (blue button on the top right)
  11. On the next page click on Submit merge request (green button at the bottom of the page)
  12. Once the change has been accepted and merged by reviewer, clean up the local repository by:
    1. Change to the master branch: git checkout master
    2. Fetch the remote, bringing the branches and their commits from the remote repository. The -p, --prune option deletes any remote-tracking references that no longer exist in the remote: git fetch -p origin
    3. Merge the changes from origin/master into your local master branch. This brings your master branch in sync with the remote repository, without losing your local changes. If your local branch didn't have any unique commits, Git will instead perform a "fast-forward". git merge origin/master
    4. Remove your working branch: git branch -d [your-branch-name]

As a reviewer, I want to accept and merge a change

  1. Go to https://gitlab.com/gfanz/genomics-tools/merge_requests, find out the merge request to review and click on it
  2. Check the results of the tests:
    1. If the tests have failed, click on Close merge request (orange button on top right) and wait until the researcher can pass all tests
    2. If the tests have succeeded:
      1. Review the code change by clicking on the Changes tab at the bottom of the page
      2. If you are happy with the changes proposed, check the Delete source branch box and click on the Merge button

genomics-tools's People

Contributors

relshire avatar dfraccas avatar swbisset avatar finlay avatar gilliangibb avatar oliviaab avatar teolupus avatar timclicks avatar

Watchers

Helge Dzierzon avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.