We welcome your contributions! Please see the provided steps below and never hesitate to contact us.
If you are a new user, we recommend checking out the detailed Github Guides.
In order to make changes to pycro-manager
, you will need to fork the
repository.
If you are not familiar with git
, we recommend reading up on this guide.
Clone the forked repository to your local machine and change directories:
git clone https://github.com/your-username/pycro-manager.git
cd pycro-manager
Set the upstream
remote to the base pycro-manager
repository:
git remote add upstream https://github.com/micro-manager/pycro-manager.git
Install the package in editable mode, along with all of the developer tools
pip install -r requirements.txt
pip install -e .[test]
Create a new feature branch:
git checkout master -b your-branch-name
git
will automatically detect changes to a repository.
You can view them with:
git status
Add and commit your changed files:
git add my-file-or-directory
git commit -m "my message"
Each commit you make must have a GitHub-registered email
as the author
. You can read more here.
To set it, use git config --global user.email [email protected]
.
Switch to the master
branch:
git checkout master
Fetch changes and update master
:
git pull upstream master --tags
This is shorthand for:
git fetch upstream master --tags
git merge upstream/master
Update your other branches:
git checkout your-branch-name
git merge master
Update your remote branch:
git push -u origin your-branch-name
You can then make a pull-request to pycro-manager
's master
branch.
- Add/edit files in the
docs/source
directory - Build a local copy by navigating to the
docs
and typingmake clean && make html
. Make sure there are no compilation errors - View the locally built version by opening the
docs/build/html/index.html
file Most web browsers will allow you to preview HTML pages. Try enteringfile:///absolute/path/to/pycro-manager/docs/build/html/index.html
in your address bar.
If you have questions, comments, suggestions for improvement, or any other inquiries regarding the project, feel free to open an issue.
Issues and pull-requests are written in Markdown. You can find a comprehensive guide here.