Mike Frysinger e6a202f790 project: add basic path checks for <copyfile> & <linkfile>
Reject paths in <copyfile> & <linkfile> that try to use symlinks or
non-file or non-dirs.

We don't fully validate <linkfile> when src is a glob as it's a bit
complicated -- any component in the src could be the glob.  We make
sure the destination is a directory, and that any paths in that dir
are created as symlinks.  So while this can be used to read any path,
it can't be abused to write to any paths.

Bug: https://crbug.com/gerrit/11218
Change-Id: I68b6d789b5ca4e43f569e75e8b293b3e13d3224b
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/233074
Tested-by: Mike Frysinger <vapier@google.com>
Reviewed-by: Mike Frysinger <vapier@google.com>
Reviewed-by: Michael Mortensen <mmortensen@google.com>
2020-02-04 20:34:23 +00:00
2016-09-14 09:49:02 +02:00
2017-05-26 21:44:57 +09:00
2019-06-13 14:30:52 +00:00
2019-06-13 13:23:19 -04:00
2019-12-02 04:23:31 +00:00
2019-06-13 14:30:52 +00:00
2020-01-25 00:53:39 +00:00
2019-12-05 01:02:08 +00:00
2020-02-04 06:39:42 +00:00
2019-08-27 07:08:52 +00:00
2019-12-02 04:23:31 +00:00
2019-12-02 04:24:23 +00:00
2019-07-31 08:38:19 +00:00

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
Description
No description provided
Readme Apache-2.0 36 MiB
Languages
Python 99.1%
Shell 0.9%