|
@@ -0,0 +1,65 @@
|
|
|
+# Copyright (c) 2023 The Chromium Authors. All rights reserved.
|
|
|
+# Use of this source code is governed by a BSD-style license that can be
|
|
|
+# found in the LICENSE file.
|
|
|
+
|
|
|
+
|
|
|
+# This adds completion to bash shells for git commands. It is
|
|
|
+# meant for developers and not needed for inclusion by any automated
|
|
|
+# processes that will, of course, specify the full command, not rely
|
|
|
+# on or benefit from tab-completion.
|
|
|
+#
|
|
|
+# Requires:
|
|
|
+# Installed git bash completion.
|
|
|
+#
|
|
|
+# Usage:
|
|
|
+# Add this to your .bashrc:
|
|
|
+#
|
|
|
+# # The next lines enable bash completion for git commands from
|
|
|
+# # depot_tools.
|
|
|
+# if [ -f "$HOME/bin/depot_tools/git_completion.sh" ]; then
|
|
|
+# . "$HOME/bin/depot_tools/git_completion.sh"
|
|
|
+# fi
|
|
|
+
|
|
|
+
|
|
|
+_git_new_branch ()
|
|
|
+{
|
|
|
+ case "$cur" in
|
|
|
+ -*)
|
|
|
+ __gitcomp_nl_append "--upstream_current"
|
|
|
+ __gitcomp_nl_append "--upstream"
|
|
|
+ __gitcomp_nl_append "--lkgr"
|
|
|
+ __gitcomp_nl_append "--inject_current"
|
|
|
+ ;;
|
|
|
+ *)
|
|
|
+ case "$prev,$cur" in
|
|
|
+ --upstream,o*)
|
|
|
+ # By default (only local branch heads are shown after --upstream, see
|
|
|
+ # the case below. If, however, the user types "--upstream o", also
|
|
|
+ # remote branches (origin/*) are shown.
|
|
|
+ __git_complete_refs --cur="$cur"
|
|
|
+ ;;
|
|
|
+ --upstream,*)
|
|
|
+ __gitcomp_nl "$(__git_heads '' $cur)"
|
|
|
+ ;;
|
|
|
+ esac
|
|
|
+ esac
|
|
|
+}
|
|
|
+
|
|
|
+_git_reparent_branch ()
|
|
|
+{
|
|
|
+ case "$cur" in
|
|
|
+ -*)
|
|
|
+ __gitcomp_nl_append "--lkgr"
|
|
|
+ __gitcomp_nl_append "--root"
|
|
|
+ ;;
|
|
|
+ o*)
|
|
|
+ # By default (only local branch heads are shown after --upstream, see the
|
|
|
+ # case below. If, however, the user types "--upstream o", also remote
|
|
|
+ # branches (origin/*) are shown.
|
|
|
+ __git_complete_refs --cur="$cur"
|
|
|
+ ;;
|
|
|
+ *)
|
|
|
+ __gitcomp_nl "$(__git_heads '' $cur)"
|
|
|
+ ;;
|
|
|
+ esac
|
|
|
+}
|