Git repository on this server: Difference between revisions
Appearance
No edit summary |
|||
| Line 1: | Line 1: | ||
This server can host two types of Git repositories. | This server can host two types of Git repositories. | ||
;Central repositories: These repositories are located under <tt>/var/git</tt> directory and can be [http://rtime.felk.cvut.cz/gitweb browsed online]. Only server administrators can create and controll access to central repositories. | ;Central repositories: These repositories are located under <tt>/var/git</tt> directory and can be [http://rtime.felk.cvut.cz/gitweb browsed online]. Only server administrators can create and controll access to central repositories. Central repositories are usually public giving read-only access to everybody. | ||
;Personal repositories: Any user with shell access can can create his/her own git repository under his/her home directory and make it public using git protocol. | ;Personal repositories: Any user with shell access can can create his/her own git repository under his/her home directory and make it public using git protocol. | ||
Revision as of 14:02, 15 February 2009
This server can host two types of Git repositories.
- Central repositories
- These repositories are located under /var/git directory and can be browsed online. Only server administrators can create and controll access to central repositories. Central repositories are usually public giving read-only access to everybody.
- Personal repositories
- Any user with shell access can can create his/her own git repository under his/her home directory and make it public using git protocol.
Creating personal repository
ssh login@rtime.felk.cvut.cz mkdir $HOME/myproject.git cd $HOME/myproject.git git --bare init
First push (upload)
After an empty repository is created either by you (personal) of by an admin (central), you can push (upload) data to it:
- Optional: Setup passwordless login to the server
- Optional for central repositories: Fill in the description of the project for GitWeb interface – edit the file /var/git/repo-name.git/description on the server.
- Install Git on your local computer
- Put your sources into your local repository
cd your/project git init # initializes git repository in your project's directory git add . # tells git to track all files in your project git commit # commits the added files to the repository
- Then "connect" your repository to the one on this server (replace login by your login and repo-name by the name of repository created for you)
git remote add origin login@rtime.felk.cvut.cz:/var/git/repo-name.git git config branch.master.remote origin git config branch.master.merge refs/heads/master
- Push your sources to the server
git push --all
Accessing the repositories
Once the repository is not empty, everybody can use one of following commands to work with the code in the repository (it is not necessary add origin and configure remote branches as described above):
git clone login@rtime.felk.cvut.cz:/var/git/repo-name.git git clone git://rtime.felk.cvut.cz/repo-name.git
For other hints refer to the git documentation or to this page.