All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] graph API: use a new color when starting a brand new column
@ 2009-08-18 21:41 Adam Simpkins
  0 siblings, 0 replies; only message in thread
From: Adam Simpkins @ 2009-08-18 21:41 UTC (permalink / raw)
  To: git; +Cc: Allan Caffee, Junio C Hamano

Use a new color for commits that don't have any previously printed
children.  The following command demonstrates the changes:

  git log --graph --pretty=tformat:'%h %s%n' -7 481c7a6 18b0793

Now the two independent lines of development are displayed with
different colors, instead of both using the same color.

Signed-off-by: Adam Simpkins <simpkins@facebook.com>
---
 graph.c |   14 +++++++++++---
 1 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/graph.c b/graph.c
index e466770..f3226ec 100644
--- a/graph.c
+++ b/graph.c
@@ -225,7 +225,12 @@ struct git_graph *graph_init(struct rev_info *opt)
 	graph->num_columns = 0;
 	graph->num_new_columns = 0;
 	graph->mapping_size = 0;
-	graph->default_column_color = 0;
+	/*
+	 * Start the column color at the maximum value, since we'll
+	 * always increment it for the first commit we output.
+	 * This way we start at 0 for the first commit.
+	 */
+	graph->default_column_color = COLUMN_COLORS_MAX - 1;
 
 	/*
 	 * Allocate a reasonably large default number of columns
@@ -499,11 +504,14 @@ static void graph_update_columns(struct git_graph *graph)
 			     parent;
 			     parent = next_interesting_parent(graph, parent)) {
 				/*
-				 * If this is a merge increment the current
+				 * If this is a merge, or the start of a new
+				 * childless column, increment the current
 				 * color.
 				 */
-				if (graph->num_parents > 1)
+				if (graph->num_parents > 1 ||
+				    !is_commit_in_columns) {
 					graph_increment_column_color(graph);
+				}
 				graph_insert_into_new_columns(graph,
 							      parent->item,
 							      &mapping_idx);
-- 
1.6.4.314.g5667f

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2009-08-18 21:41 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-18 21:41 [PATCH] graph API: use a new color when starting a brand new column Adam Simpkins

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.