- Delivered by Matthew McCullough on 2012-09-04 at EmergeInteractive.com in Portland, OR
- Julian Pscheid [email protected]
- Django Radonich-Camp [email protected]
- Interactive Rebasing
- Traditional squash, reword and edit
- Fixup
- Autosquash
- Controlling pull and push behavior with advanced configuration options.
insteadOf
git config autosetuprebase always
- Changing the refspec directly
- The
+
in the refspec forces the pull or push to overwrite
- Minimizing repetitive merge efforts with
rerere
.git config rerere.enabled true
- Rerere article
- Rerere man page
- Relocating chunks of work with
rebase onto
- Switches branches before rebasing
- Think about moving the "string of beads" onto another endpoint
- Rebase man page
- Git best practices
- Frequent Branching
- Git Flow (too complex)
- GitHub Flow (just right)
- Searching through history with string, combination, and pickaxe approaches.
git log -S "STRING"
git log -G "REGEX"
- Git log man page
- Finding the original author of methods in refactored and relocated code.
git blame -C <FILENAME>
- Git blame man page
- Ways to manage long-term projects
- How GitHub uses Pull Requests
- Patch and Diffs
.patch
and.diff
added to end of commit and Pull Request URLs- https://github.com/githubtraining/hellogitworld/commit/32c273781bab599b955ce7c59d92c39bedf35db0.diff
- https://github.com/githubtraining/hellogitworld/commit/32c273781bab599b955ce7c59d92c39bedf35db0.patch
- Ignoring whitespace
- Cross Repository issue links
- Format:
user/repository#number
- GitHub Flavored Markdown
- Format:
- GitHub Keyboard Shortcuts
- Open github.com and type
?
w
(branch navigator)t
(file navigator)s
(search)m
(markdown cheat sheet)c
(create issue)
- Open github.com and type
- Using the Hub command line tool
- Administratively shaping history with
git filter-branch
- At milestones or after a Subversion import, or when bad data creeps in.
- Examples on how to use filter-branch
- GitHub Help article on filter-branch
- Adding Git notes and their effective namespace use.
Thanks for this learning session it was really informative.