Git authors
Introduction
We need your help to contribute to this project!
If you are interested in moving your script in to the repository, please read through these options.
Github user setup
Create a free account at github
https://github.com/plans
Then go to
https://github.com/Pymol-Scripts/Pymol-script-repo
Near the top right corner, click: Fork
In the top left corner, it should now say: YOUR_NAME / Pymol-script-repo. This is your own repository.
Click HTTP in the middle. We will use this, and it should be like.
https://GIT_USER_NAME@github.com/GIT_USER_NAME/Pymol-script-repo.git
You also have to find your Github API-token for the acces.
Locate token at: Account settings -> Account admin -> API Token Configure git
0123456789yourf0123456789token
Online - make changes to a file
You can change a file online, by clicking it, and then at the right side, click Edit this file.
Make changes, write a "commit message", and in the lower right, click Commit changes.
If you want to your changes to be part of the official repository, click Pull Request, and write a message.
This will notify the group of admins to review your changes.
If the changes reasonable and not malicious for the computer, your Pull Request will quickly be in the official repository.
Note, that you can not add files online.
Git setup - Add scripts to the project
The next setup can be followed for both linux and windows users, if windows users use the Bash terminal.
You can paste from the wiki into the Bash window by using the console's window icon (topleft) and choosing Edit -> Paste
- Navigate to C:/Users/YOURNAME/Documents/Pymol-script-repo OR /home/YOURNAME/Software/pymol/Pymol-script-repo
- Win users: Right click in folder -> Select: Git Bash
- Write in terminal
git config --global user.name "Your Name" git config --global user.email you@example.com git config --global github.user GIT_USER_NAME git config --global github.token 0123456789yourf0123456789token git remote set-url origin https://GIT_USER_NAME@github.com/GIT_USER_NAME/Pymol-script-repo.git
See your information
cat ~/.gitconfig git branch git remote show origin
Daily workflow
We now imagine that you would like to make a script called testscript.py. Remember that the filename should be with small letters, and without minus "-" in the name.
You will like to work on this script, and try it out, until its ready for sharing and make it public at the PyMOL wiki.
To follow the following guidelines, you can consider reading some other introduction pages to git.
Git commands, fork-a-repo, send-pull-requests
Code marked with a "#" is only made for giving extra information to the user, to see the changes.
First we make branch where we will work with the script testscript.py. We will create the branch testscript, by making a copy of the master branch.
git branch # See what branches exist git checkout -b testscript master # Make branch "testscript" from branch "master", and change into the branch "testscript" git branch # The star mark you are in the "testscript" branch git ls-tree --name-only testscript # See which files are tracked
Then we create a first initial version of the file
(echo 'from pymol import cmd' && echo 'def testme():' && echo ' print("Hello world")' && echo 'cmd.extend("testme",testme)') > testscript.py
Then we want git to track the file, so we have to add the file. And we then commit it.
git status # testscript.py is untracked git add testscript.py # To start tracking the file git status # testscript.py is added and staged. git commit -m "I added testscript" # So, now you are done with the first thing.
You then start PyMOL, import the script and initiate the function testme
import testscript # To import the functions help(testscript) # To see the defined functions testme # To activate the function