Showing posts with label commit. Show all posts
Showing posts with label commit. Show all posts

Tuesday, May 5, 2015

Some Git notes from my experiences

BASIC BRANCH COMMANDS

git branch -- lists off all current branches
git brach -- creates a new branch bases upon the currently checkedout branch
git checkout -- switches to that branch name
git branch -d -- deletes a branch by name

To Merge BranchB into BranchA (or master)
1. git checkout BranchA
2. git merge BranchB
3. git branch -d BranchB

CLONE does checkout too
git clone <{name}>

git branch

CHECKS OUT EXISTING BRANCH
git checkout

CREATES A NEW BRANCH AND CHECKS IT OUT
git checkout -b

DELETES A BRANCH
git branch -d

DELETES A BRANCH (forcefully)
git branch -D

DELETE REMOTE BRANCH
git push origin :shopping_cart


MERGES THE INTO CURRENT BRANCH
git merge

MARKING A CONFLICT AS RESOLVED
git add

MAKING A BRANCH FOLLOW (or TRACK) A REMOTE BRANCH
git branch --track branch-name origin/branch-name

DIFF

CodeSchool GitReal DIFF

git diff HEAD^
git diff HEAD^^
git diff HEAD~5
git diff HEAD^^..HEAD

git log --oneline
git log --oneline -p

CodeSchool GitReal DIFF

git rm
git status
git commit -m "stuff"

TO UNTRACK A FILE (only deleted from the repo not from the file system)

git rm --cached development.log

COMMITS

ADDING A COMMIT

git add .
git commit -m "My Message"

SAME AS ABOVE WITH ONE COMMAND

git commit -am "My Message"

APPENDING A COMMIT

git commit --append -am "My Message"


DELETE THE LAST COMMIT (don't do this after a PUSH!!!)

git reset --hard HEAD^
DELETE MORE THAN ONE COMMIT add more ^ to the end


UNDO THE LAST COMMIT BACK INTO STAGE (don't do this after a PUSH!!!)

git reset --soft HEAD^
KINDA LIKE git commit --amend -m "commit message"

BLOWS AWAY ALL CHANGES SINCE LAST COMMIT

git checkout -- file.txt

REMOVING ITEMS FROM THE STAGE


git reset HEAD file.txt

REMOTES

git remote add
git remote rm

LINKING LOCAL BRANCH TO REMOTE BRANCH
git push origin shopping_cart

VIEWING REMOTE BRANCHES
git branch -r

REMOTE SHOW
git remote show origin

DELETE REMOTE BRANCH
git push origin :shopping_cart

CLEANUP STALE BRANCHES
git remote prune
git remote prune origin

TAGS

GETTING CODE FROM A TAG

git checkout

TO CREATE A TAG

git tag -a -m "comment"

TO PUSH A TAG

git push --tags

UNDOING CHANGES

Undoes all changes in current branch
git checkout -- .

Unstage a file
git reset HEAD -- path/filename.ext

Undo a specific file that has been staged
git reset HEAD -- path/filename.ext
git checkout -- path/filename.ext

Undo a specific unstaged file
git checkout -- path/filename.ext
git clean -df path/filename.ext

Undoing an unstaged folder
Just delete the folder from the file structure