This shows you the differences between two versions of the page.
git [2013/04/16 14:46] walter [About] |
git [2021/05/02 21:36] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== About ====== | ||
- | **This information is out of date** | ||
- | |||
- | **Currently you can only host repos out of your home directory, if you want to secure it setup http auth** | ||
- | |||
- | The acm has member git hosting at http://acm.cs.uic.edu/git. | ||
- | |||
- | Public Repos at https://acm.cs.uic.edu/git/public | ||
- | |||
- | |||
- | ====== Issues ====== | ||
- | * April 15, 2013 | ||
- | * GitLab has been installed. | ||
- | * Does not allow for public visibility of public project, except for repos that you yourself have created. | ||
- | * ACM SSL Certificate is self-signed, causing an error. You must set your local repo to NOT verify SSL via http. | ||
- | |||
- | git config http.sslVerify false | ||
- | |||
- | * GitLab is not able to resolve users for teams. Possibly an LDAP lookup issue. | ||
- | * Not sure if this is just me, but it doesn't seem like you are able to submit pull requests to other's repos. (Not tested extensively though...) | ||
- | ====== 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/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 | ||
- | | ||
- | ==== resolving conflicts ==== | ||
- | |||
- | git mergetool [-t vimdiff] | ||
- | fix problems, then | ||
- | git commit | ||