commit | 1e01a7444536b4865feb94c398b68a936a463ddc | [log] [tgz] |
---|---|---|
author | Theodore Dubois <tbodt@google.com> | Tue Dec 17 17:51:29 2019 -0800 |
committer | Mike Frysinger <vapier@google.com> | Wed Dec 18 21:16:23 2019 +0000 |
tree | 7a3ee434a9b8fdd00d3aaebe5e22aab432d8c5a8 | |
parent | 7c321f1bf6c19efdeae1042acfff5933ab4b376f [diff] |
Port _FileDescriptorStreamsNonBlocking to use poll() select() has a limit of FD_SETSIZE file descriptors. If you run repo sync -j500 you'll pretty quickly hit this limit and get "file descriptor out of range for select" errors. poll() has no such limit. Change-Id: I21f350e472bda1db03dcbcc437645c23dbc7a901 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/248852 Reviewed-by: Mike Frysinger <vapier@google.com> Tested-by: Theodore Dubois <tbodt@google.com>
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.
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