1. 17 Jan, 2019 1 commit
  2. 18 Dec, 2016 1 commit
  3. 07 Dec, 2015 1 commit
  4. 31 Jan, 2014 1 commit
  5. 30 Jan, 2014 5 commits
    • Conley Owens's avatar
      Share git version parsing code with wrapper module · ff0a3c8f
      Conley Owens authored
      'repo' and 'git_command.py' had their own git version parsing code.
      This change shares that code between the modules.  DRY is good.
      
      Change-Id: Ic896d2dc08353644bd4ced57e15a91284d97d54a
      ff0a3c8f
    • Conley Owens's avatar
      Add wrapper module · 094cdbe0
      Conley Owens authored
      This takes the wrapper importing code from main.py and moves it into
      its own module so that other modules may import it without causing
      circular imports with main.py.
      
      Change-Id: I9402950573933ed6f14ce0bfb600f74f32727705
      094cdbe0
    • Conley Owens's avatar
      Respect version hyphenation · 148a84de
      Conley Owens authored
      The last change regarding version parsing lost handling of version
      hyphenation, this restores that.  In otherwords,
      1.1.1-otherstuff is parsed as (1,1,1) instead of (1,1,0)
      
      Change-Id: I3753944e92095606653835ed2bd090b9301c7194
      148a84de
    • Conley Owens's avatar
      Handle release candidates in git version parsing · 1c5da49e
      Conley Owens authored
      Right now repo chokes on git versions like "1.9.rc1".  This change
      treats 'rc*' as a '0'.
      
      Change-Id: I612b7b431675ba7415bf70640a673e48dbb00a90
      1c5da49e
    • David James's avatar
      repo: Fix 'remove-project' regression with multiple projects. · b8433dfd
      David James authored
      In CL:50715, I updated repo to handle multiple projects, but the
      remove-projects code path was not updated accordingly. Update it.
      
      Change-Id: Icd681d45ce857467b584bca0d2fdcbf24ec6e8db
      b8433dfd
  6. 29 Jan, 2014 3 commits
    • Conley Owens's avatar
      Properly iterate through values · f2fe2d9b
      Conley Owens authored
      the value of Manifest.projects has changed from being the dictionary
      to the values of the dictionary.  Here we handle this change
      correctly on a PostRepoUpgrade.
      
      From a `git diff v1.12.7 -- manifest_xml.py`:
      +  @property
         def projects(self):
           self._Load()
      -    return self._projects
      +    return self._paths.values()
      
      self._paths does contain the projects according to this line of
      manifest_xml.py:
      484      self._paths[project.relpath] = project
      
      Change-Id: I141f8d5468ee10dfb08f99ba434004a307fed810
      f2fe2d9b
    • Conley Owens's avatar
      c9877c7c
    • Shawn Pearce's avatar
      Only fetch current branch on shallow clients · 69e04d89
      Shawn Pearce authored
      Fetching a new branch on a shallow client may download the entire
      project history, as the depth parameter is not passed to git
      fetch. Force the fetch to only download the current branch.
      
      Change-Id: Ie17ce8eb5e3487c24d90b2cae8227319dea482c8
      69e04d89
  7. 14 Jan, 2014 1 commit
  8. 10 Jan, 2014 2 commits
  9. 09 Jan, 2014 1 commit
  10. 26 Dec, 2013 1 commit
    • David James's avatar
      Fix os.mkdir race condition. · bf79c661
      David James authored
      This code checks whether a dir exists before creating it. In between the
      check and the mkdir call, it is possible that another process will have
      created the directory. We have seen this bug occur many times in
      practice during our 'repo init' tests.
      
      Change-Id: Ia47d39955739aa38fd303f4e90be7b4c50d9d4ba
      bf79c661
  11. 18 Dec, 2013 1 commit
  12. 17 Dec, 2013 1 commit
  13. 12 Dec, 2013 1 commit
    • Warren Turkal's avatar
      Don't backtrace when current branch is not uploadable. · 011d4f42
      Warren Turkal authored
      The backtrace currently occurs when one uses the "--cbr" argument with
      the repo upload subcommand if the current branch is not tracking an
      upstream branch. There may be other cases that would backtrace as well,
      but this is the only one I found so far.
      
      Change-Id: Ie712fbb0ce3e7fe3b72769fca89cc4c0e3d2fce0
      011d4f42
  14. 10 Dec, 2013 2 commits
    • Warren Turkal's avatar
      Fix error in xml manifest doc. · 53d6a7b8
      Warren Turkal authored
      The docs on the annotations say that zero or more may exist as a child
      of a project, so that means that a "*" instead of a "?" should be used.
      
      Change-Id: Iff855d003dfb05cd980f285a237332914e1dad70
      53d6a7b8
    • Julien Campergue's avatar
      Add --archive option to init to sync using git archive · 335f5ef4
      Julien Campergue authored
      This significantly reduces sync time and used brandwidth as only
      a tar of each project's revision is checked out, but git is not
      accessible from projects anymore.
      
      This is relevant when git is not needed in projects but sync
      speed/brandwidth may be important like on CI servers when building
      several versions from scratch regularly for example.
      
      Archive is not supported over http/https.
      
      Change-Id: I48c3c7de2cd5a1faec33e295fcdafbc7807d0e4d
      Signed-off-by: 's avatarJulien Campergue <julien.campergue@parrot.com>
      335f5ef4
  15. 03 Dec, 2013 1 commit
    • Jesse Hall's avatar
      Canonicalize project hooks path before use · 672cc499
      Jesse Hall authored
      If the top-level .repo directory is moved somewhere else (e.g. a
      different drive) and replaced with a symlink, _InitHooks() will create
      broken symlinks. Resolving symlinks before computing the relative path
      for the symlink keeps the path within the repo tree, so the tree can
      be moved anywhere.
      
      Change-Id: Ifa5c07869e3477186ddd2c255c6c607f547bc1fe
      672cc499
  16. 29 Nov, 2013 1 commit
  17. 22 Nov, 2013 1 commit
  18. 21 Nov, 2013 4 commits
    • Conley Owens's avatar
      Fix print of git-remote-persistent-https error · cbc0798f
      Conley Owens authored
      If git-remote-persistent-https fails, we use an iter() and then
      subsequently a .read() on stderr.  Python doesn't like this and
      gives the following error message:
      ValueError: Mixing iteration and read methods would lose data
      
      This change removes the use of iter() to avoid the issue.
      
      Change-Id: I980659b83229e2a559c20dcc7b116f8d2476abd5
      cbc0798f
    • Chirayu Desai's avatar
      Remove trailing whitespace · d5a5b19e
      Chirayu Desai authored
      Change-Id: I56bcb559431277d40070fa33c580c6c3525ff9bc
      d5a5b19e
    • Chirayu Desai's avatar
      Allow using repo with python3 · 5d6cb80b
      Chirayu Desai authored
      * Switching from python2 to python3 in the same workspace isn't
        currently supported, due to a change in the pickle version (which
        isn't supported by python2)
      * Basic functionality does work with python3, however not everything
        is expected to
      
      Change-Id: I4256b5a9861562d0260b503f972c1569190182aa
      5d6cb80b
    • Chirayu Desai's avatar
      Fix some python3 encoding issues · 0eb35cbe
      Chirayu Desai authored
      * Add .decode('utf-8') where needed
      * Add 'b' to `open` where needed, and remove where unnecessary
      
      Change-Id: I0f03ecf9ed1a78e3b2f15f9469deb9aaab698657
      0eb35cbe
  19. 16 Oct, 2013 3 commits
  20. 15 Oct, 2013 3 commits
  21. 14 Oct, 2013 1 commit
    • David James's avatar
      repo: Support multiple branches for the same project. · 8d201160
      David James authored
      It is often useful to be able to include the same project more than
      once, but with different branches and placed in different paths in the
      workspace. Add this feature.
      
      This CL adds the concept of an object directory. The object directory
      stores objects that can be shared amongst several working trees. For
      newly synced repositories, we set up the git repo now to share its
      objects with an object repo.
      
      Each worktree for a given repo shares objects, but has an independent
      set of references and branches. This ensures that repo only has to
      update the objects once; however the references for each worktree are
      updated separately. Storing the references separately is needed to
      ensure that commits to a branch on one worktree will not change the
      HEAD commits of the others.
      
      One nice side effect of sharing objects between different worktrees is
      that you can easily cherry-pick changes between the two worktrees
      without needing to fetch them.
      
      Bug: Issue 141
      Change-Id: I5e2f4e1a7abb56f9d3f310fa6fd0c17019330ecd
      8d201160
  22. 10 Oct, 2013 4 commits