#Raw Git: Setup: None
Template is stored at: https://github.gatech.edu/cs1331/hw-template ##Creating a new one from template:
- Create
hw-name
on github - Clone repo onto local box, e.g
git clone https://github.gatech.edu/cs1331/hw-name.git
- cd
hw-name
andgit remote add template https://github.gatech.edu/cs1331/hw-template.git
git pull template master
- Edit the files that have templated out values
- Add, commit, push, etc.
##Updating if the template changes:
git pull template master
##Pros
- Keeps template changes in history
- Easy to update if template changes
- Nothing to install
##Cons
- Have to manually fill in template first time
- More verbose; could be a bit "hardcore" for git newbies
#giter8 Setup: Install g8 from https://github.com/n8han/giter8, ~3 minutes (appears to be harder on Windows)
Template is stored at: https://github.com/cs1331/hw-template.g8
##Creating a new one from template:
- Create
hw-name
on github - Clone repo onto local box, e.g
git clone https://github.gatech.edu/cs1331/hw-name.git
g8 cs1331/hw-template
& plug in values. This is super snazzy and way nicer than step #4 of raw git- cd
hw-name
and Add, commit, push, etc.
##Updating if the template updates:
g8 -f cs1331/hw-template
and re-plugin values. BEWARE: this will completely overwrite templated files.
##Pros
- Super slick setup
- Automated template plugging in
##Cons
- No history of template changes
- Have to install g8
- No ability to update if template changes! The only option is to completely recreate from template, which overrides stuff.
#activator Setup: Download Activator from https://www.typesafe.com/activator/download, ~5 minutes (have to manually add to path)
Template is stored at: https://github.gatech.edu/cs1331/hw-example
##Creating a new one from template:github
- Create
hw-name
on github activator new hw-name cs1331-hw1
- cd
hw-name
,git init
, andgit remote add origin https://github.gatech.edu/cs1331/hw-name.git
- Make any changes necessary
- Add, commit, etc
- On the first push,
git push -u origin master
##Updating if template changes:
##Pros
- Slick setup / initialization
- Can use github hooks to autoupdate the activator repo when you push to the template repo
##Cons
- pollutes project with activator binaries, LICENSE, and "tutorial"
- No history of template changes
- Have to install activator
- No ability update if template changes
- Have to manually fill in template, other than the project name, which activator fills in for you