Fix repo mirror with --current-branch

Before a2cd6aeae8, "repo mirror with --current-branch" fetches git data
using command
    git fetch --progress --update-head-ok cros --tags
No refspec is specified, thus it fetches default refspec, which is +refs/heads/*:refs/heads/*

After a2cd6aeae8, the fetch command became
     git fetch --progress --update-head-ok cros --tags +refs/tags/*:refs/tags/*
It did not only add tags refspec, but also suppressed the fetching of default refspec.

In other words, repo mirrors doesn't work if current_branch_only=True.
This CL explicitly adds the default refspec to command line if none is
specified.

Bug: https://crbug.com/gerrit/11990
Change-Id: Iadcf7b9aa50f53c47132cfe6c53b3fb2076ebca2
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/246632
Reviewed-by: David Pursehouse <dpursehouse@collab.net>
Reviewed-by: Mike Frysinger <vapier@google.com>
Tested-by: Kuang-che Wu <kcwu@chromium.org>
1 file changed
tree: 1107564123796e6e099eae47c4912cee6b40986a
  1. .flake8
  2. .gitattributes
  3. .gitignore
  4. .mailmap
  5. .project
  6. .pydevproject
  7. COPYING
  8. README.md
  9. SUBMITTING_PATCHES.md
  10. color.py
  11. command.py
  12. docs/
  13. editor.py
  14. error.py
  15. event_log.py
  16. git_command.py
  17. git_config.py
  18. git_refs.py
  19. git_ssh
  20. gitc_utils.py
  21. hooks/
  22. main.py
  23. manifest_xml.py
  24. pager.py
  25. platform_utils.py
  26. platform_utils_win32.py
  27. progress.py
  28. project.py
  29. pyversion.py
  30. repo
  31. repo_trace.py
  32. run_tests
  33. subcmds/
  34. tests/
  35. wrapper.py
README.md

repo

Repo is a tool built on top of Git. Repo helps manage many Git repositories, does the uploads to revision control systems, and automates parts of the development workflow. Repo is not meant to replace Git, only to make it easier to work with Git. The repo command is an executable Python script that you can put anywhere in your path.

Install

Many distros include repo, so you might be able to install from there.

# Debian/Ubuntu.
$ sudo apt-get install repo

# Gentoo.
$ sudo emerge dev-vcs/repo

You can install it manually as well as it's a single script.

$ mkdir -p ~/.bin
$ PATH="${HOME}/.bin:${PATH}"
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/.bin/repo
$ chmod a+rx ~/.bin/repo