Table of Contents

Git

The acm has member git hosting at http://acm.cs.uic.edu/git via a web interface.

Public Repos at https://acm.cs.uic.edu/git/public

Refer the the help section of the git website for instructions.

Instructions for local repos are listed below

Local Repositories and Some Basic Git Help

Creation

be connected to ACM

ssh acm.cs.uic.edu

First time

Create a directory called “git” in your home directory. In reality you can put a git project anywhere, but the web interface will only pick it up if it is in a directory called “git”.

mkdir -p git
cd git

Create project repo

mkdir -p myproject.git
cd myproject.git
git init --bare

Sharing (optional)

While still in ~/git/myproj.git:

touch git-daemon-export-ok
echo "a nifty project" > description

Publishing your work

I assume you have already created a local git project with something like the following commands:

cd myProject
git init
vim .gitignore
git add .
git commit 

add ACM as remote

Add acm as a remote repo

git remote add origin ssh://user@acm.cs.uic.edu:~/git/myproj.git

Push!

The syntax for this command is “push toBranch fromBranch”

git remote push origin master

Collaborating

setup

working on a project with a partner that has already started:

on acm, run these comands

ssh acm.cs.uic.edu
mkdir -p git/project.git
cd git/project.git
git init --bare
echo "my project is awesome" > description
touch git-daemon-export-ok

on your local machine run these commands:

mkdir project
git init
git remote add origin ssh://acm.cs.uic.edu:~/git/project.git
git remote add friend http://acm.cs.uic.edu:~/some path/git/friend/git/project.git
git remote update
git merge friend

working

git add .
git commit

Sharing changes

git push origin master

getting updates

git remote update
git merge friend

Creation

resolving conflicts

git mergetool [-t vimdiff]

fix problems, then

git commit