Git
From GLMWiki
Contents
Git Docs
Installation & Initial Setup
Git Installation & Initial Setup
Git home config file
~/.gitconfig
[user] name = (your name) email = (your email) [color] diff = always ui = true [core] excludesfile = /home/(your user)/.gitignore_global autocrlf = input sharedRepository = 0664 [alias] ci = commit co = checkout br = branch st = status graph = log --pretty=format:\"%h %s\" --graph [push] default = simple [branch] autosetuprebase = always
Git Ignore File
create a file called .gitignore_global in you home directory
git config --global core.excludesfile ~/.gitignore_global
# OS generated files # ###################### .DS_Store* ehthumbs.db Icon? Thumbs.db ._* *.swp # Gaslight Media Application specific # # files that are updated on server # ####################################### admin/logs/ GLM_site_check.phtml iconCache/ uploads/ cache/ compiled/ compile/ original/ resized/ midsized/ thumb/ thumbs/ ht_images/ photo-large/ photo-small/ prototype/ weather-feed.xml php.error reports/ editimagesworkwith/ editimagesoriginal/ editedImages/ editimagespng/ .buildpath .settings .project .svn nbproject/ smarty/
SSH Keys
Creating your ssh keys (private/public)
Setup ssh-agent
ssh-agent on windows(git bash)
Git-Svn
Checking out a site from svn with git (limit git) git svn http://git-scm.com/book/ch8-1.html
Gitolite
gpg signing
How to sign your commit or tags
Reference
git book online http://git-scm.com/book
Tracking Branches
To set your current branch as a tracking branch
git branch --set-upstream develop origin/develop git branch --set-upstream master origin/master
Git New Website Setup Checklist
phing install phing specificApp git init git flow init: all defaults except the version tag prefix, which is v git status git add . git commit -m "Initial Commit" OR git commit, so you can check files, then "Initial Commit" git push --all git push --tags git branch --set-upstream develop origin/develop git branch --set-upstream master origin/master
Git Flow
Tips
For checking out files that are part of git
git archive --remote=git://git.foo.com/project.git HEAD:path/to/directory filename | tar -x
or (can also be used to restore a deleted file)
git show SHA-ID:path/to/file
Removing a remote GIT repository
WARNING! Take GREAT caution using these commands. If you're not absolutely sure you should be using them, you should not be using them.
ssh git@cvs2 D unlock WP-Plugins/glm-sample-file-repo ssh git@cvs2 D rm WP-Plugins/glm-sample-file-repo