Skip to content

Commit e3fe829

Browse files
committed
merge, mergetool and difftool slug
1 parent 0be7401 commit e3fe829

File tree

4 files changed

+27
-3
lines changed

4 files changed

+27
-3
lines changed

book/03-git-branching/sections/basic-branching-and-merging.asc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ You'll do the following:
1515
. After it's tested, merge the hotfix branch, and push to production.
1616
. Switch back to your original story and continue working.
1717

18+
[[_basic_branching]]
1819
==== Basic Branching
1920

2021
(((branches, basic workflow)))

book/05-distributed-git/sections/contributing.asc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -477,7 +477,8 @@ The sequence for the workflow you saw here is something like this:
477477
.Basic sequence of this managed-team workflow.
478478
image::images/managed-team-flow.png[Basic sequence of this managed-team workflow.]
479479

480-
==== Public Project, Fork
480+
[[_public_project]]
481+
==== Forked Public Project
481482

482483
(((contributing, public small project)))
483484
Contributing to public projects is a bit different.
@@ -612,7 +613,7 @@ Now you can send the maintainer a message that you've made the requested changes
612613
.Commit history after `featureBv2` work.
613614
image::images/public-small-3.png[Commit history after `featureBv2` work.]
614615

615-
==== Public Project, E-Mail
616+
==== Public Project over E-Mail
616617

617618
(((contributing, public large project)))
618619
Many projects have established procedures for accepting patches – you'll need to check the specific rules for each project, because they will differ.

book/07-git-tools/sections/subtree-merges.asc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
[[_subtree_merge]]
12
===== Subtree Merging
23

34
The idea of the subtree merge is that you have two projects, and one of the projects maps to a subdirectory of the other one and vice versa.

book/C-git-commands/1-git-commands.asc

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,13 @@ We use it to filter out whitespace differences with `-w` and how to compare diff
103103

104104
Finally, we use it to effectively compare submodule changes with `--submodule` in <<_starting_submodules>>.
105105

106+
==== git difftool
107+
108+
The `git difftool` command simply launches an external tool to show you the difference between two trees in case you want to use something other than the built in `git diff` command.
109+
110+
TODO: We don't ever cover this, lol.
111+
112+
106113
==== git commit
107114

108115
The `git commit` command takes all the file contents that have been staged with `git add` and records a new permanant snapshot in the database and then moves the branch pointer on the current branch up to it.
@@ -171,10 +178,24 @@ Finally, we go into some implementation detail in <<_the_head>>.
171178

172179
==== git merge
173180

174-
The `git merge` tool is used to merge one or more branches into the branch you have checked out.
181+
The `git merge` tool is used to merge one or more branches into the branch you have checked out. It will then advance the current branch to the result of the merge.
182+
183+
The `git merge` command was first introduced in <<_basic_branching>>. Though it is used in various places in the book, there are very few variations of the `merge` command -- generally just `git merge <branch>` with the name of the single branch you want to merge in.
184+
185+
We covered how to do a squashed merge (where Git merges the work but pretends like it's just a new commit without recording the history of the branch you're merging in) at the very end of <<_public_project>>.
186+
187+
We went over a lot about the merge process and command, including the `-Xignore-all-whitespace` command and the `--abort` flag to abort a problem merge in <<_advanced_merging>>.
188+
189+
We learned how to verify signatures before merging if your project is using GPG signing in <<_signing_commits>>.
190+
191+
Finally, we learned about Subtree merging in <<_subtree_merge>>.
175192

176193
==== git mergetool
177194

195+
The `git mergetool` command simply launches an external merge helper in case you have issues with a merge in Git.
196+
197+
We mention it quickly in <<_basic_merge_conflicts>> and go into detail on how to implement your own external merge tool in <<_external_merge_tools>>.
198+
178199
==== git log
179200

180201
==== git stash

0 commit comments

Comments
 (0)