Add git cl split.

`git cl split` splits a branch into smaller branches and
uploads CLs.

Change-Id: Ic41cdabdd6241008ff48766e31a8d9d07995f2b0
Reviewed-on: https://chromium-review.googlesource.com/439706
Commit-Queue: Francois Pierre Doray <fdoray@chromium.org>
Reviewed-by: Aaron Gable <agable@chromium.org>
diff --git a/git_common.py b/git_common.py
index 78767e7..232be9a 100644
--- a/git_common.py
+++ b/git_common.py
@@ -328,7 +328,7 @@
     return {}
 
 
-def branches(*args):
+def branches(use_limit=True, *args):
   NO_BRANCH = ('* (no branch', '* (detached', '* (HEAD detached')
 
   key = 'depot-tools.branch-limit'
@@ -338,7 +338,7 @@
 
   num = len(raw_branches)
 
-  if num > limit:
+  if use_limit and num > limit:
     die("""\
       Your git repo has too many branches (%d/%d) for this tool to work well.