Difference between revisions of "Git"
Jump to navigation
Jump to search
Moskalenko (talk | contribs) |
Moskalenko (talk | contribs) |
||
Line 7: | Line 7: | ||
==Using git.hpc.ufl.edu== | ==Using git.hpc.ufl.edu== | ||
+ | ===Request a group repository=== | ||
As an example we'll use the ''awesome'' group, administrative user (set up by HPC staff) ''admin'' and a regular user ''student''. | As an example we'll use the ''awesome'' group, administrative user (set up by HPC staff) ''admin'' and a regular user ''student''. | ||
+ | |||
+ | * Open a support ticket in [http://support.hpc.ufl.edu HPC Support]] ticket system with a name like "Create an HPC Git repository for the "Awesome" group. | ||
+ | * List your projected git usage: | ||
+ | |||
+ | #What group will be accessing it. | ||
+ | #Who would be the group administrator (username). | ||
+ | #How soon you need it set up. | ||
+ | #How much space you need i.e. what type of content is going to be stored in the repository. | ||
+ | #The uptime requirements i.e. whether the occasional downtime is acceptable. | ||
+ | #Where the repository administrator's public ssh key can be found (you can paste it into the support ticket). | ||
+ | |||
+ | * Assuming that your usage pattern falls within the limits of our resources we'll create a repository 'awesome' on git.hpc.ufl.edu and configure it for the administrator. After that the administrator user 'admin' can do the following: | ||
+ | |||
===admin@linux64=== | ===admin@linux64=== | ||
The admin user on a remote machine ''linux64'' can do the following | The admin user on a remote machine ''linux64'' can do the following | ||
Line 48: | Line 62: | ||
* [new branch] master -> master | * [new branch] master -> master | ||
+ | After a new user 'student is allowed access they can start using the repository. | ||
===student@linux64=== | ===student@linux64=== | ||
* Clone the ''denovo'' repository | * Clone the ''denovo'' repository |
Revision as of 19:47, 11 October 2011
Installation
Redhat EL 6.0
Simple installation:
yum install git
Using git.hpc.ufl.edu
Request a group repository
As an example we'll use the awesome group, administrative user (set up by HPC staff) admin and a regular user student.
- Open a support ticket in HPC Support] ticket system with a name like "Create an HPC Git repository for the "Awesome" group.
- List your projected git usage:
- What group will be accessing it.
- Who would be the group administrator (username).
- How soon you need it set up.
- How much space you need i.e. what type of content is going to be stored in the repository.
- The uptime requirements i.e. whether the occasional downtime is acceptable.
- Where the repository administrator's public ssh key can be found (you can paste it into the support ticket).
- Assuming that your usage pattern falls within the limits of our resources we'll create a repository 'awesome' on git.hpc.ufl.edu and configure it for the administrator. After that the administrator user 'admin' can do the following:
admin@linux64
The admin user on a remote machine linux64 can do the following
- Check out the admin repository
git clone awesome@git.hpc.ufl.edu:gitosis-admin.git
- Add more users e.g. 'student' with a public key student.pub
cd gitosis-admin cp ~/student.pub keydir/ git add keydir/* git commit -m "added user student" git push
- Create a new repository denovo for de novo assembly scripts and set access to users admin and student
cd gitosis-admin vim gitosis.conf
Add:
[group awesome] writable = denovo members = admin student
- Commit and push
git add * git commit -m "Set up a new repository denovo for use by admin and student" git push
- Create a local working tree for the denovo project:
cd mkdir denovo cd denovo git init git remote add origin awesome@hpc.ufl.edu:denovo.git
- Add and edit some files
- Commit and push to the Git server
git add * git commit -m "Initial import" git push origin master
Output:
Initialized empty Git repository in /git/awesome/repositories/denovo.git/ Counting objects: 3, done. Writing objects: 100% (3/3), 231 bytes, done. Total 3 (delta 0), reused 0 (delta 0) To awesome@git.hpc.ufl.edu:denovo.git * [new branch] master -> master
After a new user 'student is allowed access they can start using the repository.
student@linux64
- Clone the denovo repository
git clone awesome@git.hpc.ufl.edu:denovo.git
Output:
Cloning into denovo... remote: Counting objects: 3, done. remote: Total 3 (delta 0), reused 0 (delta 0) Receiving objects: 100% (3/3), done.
- Work in the git working tree
cd denovo
Edit and add files
- Commit and push the changes to the repository
git add * git commit -m "The changes I made" git push