PSD Computing provides a web-based Git hosting service dubbed PSD Repo. It runs the GitLab Enterprise platform and offers distributed source code and document revision management, code reviews, issue tracking, activity feeds and wikis.
PSD Repo is open to all Faculty, Staff, Postdocs and Students in the Physical Sciences Department here at the Univeristy of Chicago. You can gain access with your CNetID credentials.
- Install Git
- Login to PSD Repo
Create a New Group
- OR request access to an existing group
- Create a New Repository
Clone your Project locally
- OR add as a remote to an existing local repository
What is this Version Control stuff all about?
How do I use Git?
The best all around reference to git is the Git Pro Book.
For source code specifically you will probably want to utilize a well defined process. The best we have seen is something called Git Flow. Here is the post that describes the process with command examples.
For document revision / change tracking here are some resources focusing on LaTeX based documents:
Quick reference for Subversion-ists
|checkout an existing repo||git clone http://psd-repo.uchicago.edu/stuff/stuff.git||svn checkout http://psd-repo.uchicago.edu/repos/stuff/|
|Update locally checked out files from central repo||git pull||svn update|
|List locally changes files/folders||git status||svn stat|
|Diff locally changed file||git diff somefile.txt||svn diff somefile.txt|
|Revert locally changed file*||git checkout somefile.txt||svn revert somefile.txt|
|Revert ALL local changes (except untracked files)*||git reset --hard HEAD||svn revert . -R|
|Add new file||git add file.txt||svn add file.txt|
|Add new folder recursively||git add folder||svn add folder|
|Delete file||git rm file.txt||svn rm file.txt|
|Delete folder||git rm -r folder (non-recursive by default; use -r to recurse)||svn rm folder (recursive by default; use -N to not recurse)|
|Commit changed file to central repo||git commit -m "message" file.txt; git push||svn ci -m "message" file.txt|
|Ignore files/folders (in the current folder)||
bin" > .gitignore; \
git ci -m "gitignore" .gitignore
svn propset svn:ignore "target
bin" .; \
svn ci -N -m "svn:ignore" .
- SourceTree - A Great graphical client for Git for major OS's
University of Chicago Photographic Archive, apf2-01915,
Special Collections Research Center, University of Chicago Library