[PATCH] Fetch: default remote repository from config
From: Santi Béjar <hidden>
Date: 2016-06-15 22:42:41
Subsystem:
documentation, the rest · Maintainers:
Jonathan Corbet, Linus Torvalds
If in branch "foo" and this in config:
[branch "foo"]
remote=bar
"git fetch" = "git fetch bar"
"git pull" = "git pull bar"
Signed-off-by: Santi Béjar <redacted>
---
Documentation/config.txt | 3 +++
git-fetch.sh | 11 ++++++-----
2 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/Documentation/config.txt b/Documentation/config.txt
index bb2fbc3..fa20e28 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt@@ -119,6 +119,9 @@ apply.whitespace:: Tells `git-apply` how to handle whitespaces, in the same way as the '--whitespace' option. See gitlink:git-apply[1]. +branch.<name>.remote:: + When in branch <name>, it tells `git pull` which remote to fetch. + pager.color:: A boolean to enable/disable colored output when the pager is in use (default is true).
diff --git a/git-fetch.sh b/git-fetch.sh
index 09a5d6c..e3b8f26 100755
--- a/git-fetch.sh
+++ b/git-fetch.sh@@ -68,11 +68,12 @@ done case "$#" in 0) - test -f "$GIT_DIR/branches/origin" || - test -f "$GIT_DIR/remotes/origin" || - git-repo-config --get remote.origin.url >/dev/null || - die "Where do you want to fetch from today?" - set origin ;; + curr_branch=$(git-symbolic-ref HEAD | sed -e 's|^refs/heads/||') + origin=$(git-repo-config --get "branch.$curr_branch.remote") + origin=${origin:-origin} + test -n "$(get_remote_url ${origin})" || + die "Where do you want to fetch from today?" + set x $origin ; shift ;; esac remote_nick="$1"
--
1.4.2.1.g4b5cd