lcwyylcwyy / libyuv

Automatically exported from code.google.com/p/libyuv
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Switch libyuv to Git #424

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. gcl help

What is the expected output? 
gcl without warnings

What do you see instead?
Warning: gcl is going away soon. Get off subversion!
See http://crbug.com/475321 for more details.

libyuv is hosted on code.google.com which is svn based, leveraging chromium 
depottools.  chromium has deprecated svn/gcl in favor of git.
for chromium based builds, libyuv will need to switch version control and/or 
builds.

Documentation will also need updating, and to move to a new host.

Original issue reported on code.google.com by fbarch...@chromium.org on 13 Apr 2015 at 12:18

GoogleCodeExporter commented 9 years ago

Original comment by fbarch...@chromium.org on 13 Apr 2015 at 12:21

GoogleCodeExporter commented 9 years ago
Aaron: please find a suitable owner.

I'd like to unassign myself from this one as I don't have cycles for it and 
I'll be away on a bit of parental leave soon.

I suggest someone from the chrome-infrastructure-team@ owns this migration.
I've been maintaining the libyuv buildbots as a side-project for a long time 
and I'm happy to continue to do so in the future, but this is a task that takes 
a lot of coordination so it would be better if someone in the MTV team drives 
it.

The bots are already using Git (i.e. bot_update) for their checkouts, so the 
switch should be easy if the already-mirrored repo will become the master repo: 
https://chromium.googlesource.com/external/libyuv

Affected waterfalls:
http://build.chromium.org/p/client.libyuv/waterfall
http://build.chromium.org/p/tryserver.libyuv/waterfall

Original comment by kjellan...@google.com on 13 Apr 2015 at 8:17

GoogleCodeExporter commented 9 years ago
Most chrome-infra-team members (myself included) don't have many rights on this 
project, so I've created a tracking bug for ourselves and CC'd various 
experienced Git people here: 
https://code.google.com/p/chromium/issues/detail?id=476598

Original comment by agable@chromium.org on 13 Apr 2015 at 5:52

GoogleCodeExporter commented 9 years ago
Thanks Aaron!

Original comment by kjellan...@google.com on 14 Apr 2015 at 6:52

GoogleCodeExporter commented 9 years ago
gcl is not working today (authentication issue), so raising priority to high.
Assigned to nodir@

Original comment by fbarch...@google.com on 20 Apr 2015 at 9:09

GoogleCodeExporter commented 9 years ago
Please reply on https://code.google.com/p/chromium/issues/detail?id=476598

Original comment by no...@chromium.org on 20 Apr 2015 at 10:37

GoogleCodeExporter commented 9 years ago
From bug 429:

"gcl upload" is deprecated. libyuv is switching to git: http://crbug.com/476598.

Please use "git cl upload + git cl dcommit" workflow using git mirror:
$ git clone https://chromium.googlesource.com/external/libyuv/
$ git auto-svn
$ git checkout -b feature-branch
$ ... make changes ...
$ git commit 
$ git cl upload
$ git cl dcommit

Original comment by fbarch...@google.com on 20 Apr 2015 at 11:15

GoogleCodeExporter commented 9 years ago
There seems to be some confusion that this already works/exists.
currently libyuv is hosted on code.google.com in svn, with gcl tools to make 
changes.

this bug was called 'deprecate svn' because the current svn host is being 
deprecated and a new host will be needed.
i take it from this thread that git is the best or only choice, for integrating 
into chromium and webrtc.

currently thinking it would be hosted within chromium.

Original comment by fbarch...@google.com on 21 Apr 2015 at 11:57

GoogleCodeExporter commented 9 years ago
Re #8: the svn repo at code.gogle.com is already mirrored into a Git repo 
managed by Chrome infrastructure 
(https://chromium.googlesource.com/external/libyuv/).

That's the by-far easiest migration path. You simply shut down the SVN repo and 
start accepting commits to the other repo. That's what we did for V8 and WebRTC.

The workflow will be similar to #7 except that you don't run 'git auto-svn' and 
that you'll use 'git cl land' instead of 'git cl dcommit'

Original comment by kjellan...@google.com on 22 Apr 2015 at 6:47

GoogleCodeExporter commented 9 years ago

Original comment by no...@chromium.org on 6 May 2015 at 4:14

GoogleCodeExporter commented 9 years ago
As mmoss pointed out in chromium:475321 this is not blocking deleting gcl 
(since committing with git cl dcommit works using a Git mirror).
Changing it to block chromium:475320 instead.

Original comment by kjellan...@google.com on 7 May 2015 at 9:23

GoogleCodeExporter commented 9 years ago
doh, I deleted the blocked-on rather than blocking in #11. Will update in 
chromium:475321 since it's not possible to do so here.

Original comment by kjellan...@google.com on 7 May 2015 at 9:25

GoogleCodeExporter commented 9 years ago

Original comment by kjellander@chromium.org on 7 May 2015 at 9:26

GoogleCodeExporter commented 9 years ago
libyuv is currently gcl/svn based.  Will need to find/document an alternative.  
Prefer gcl does not go away until resolved, hence I had it 'blocking'
Also documentation/issues need to move?

Original comment by fbarch...@google.com on 7 May 2015 at 9:33

GoogleCodeExporter commented 9 years ago
All you need to change in the developer workflow is to use the instructions you 
wrote in comment #7 above. Then you don't need gcl anymore.

Moving off Google code is a different task. The issues will be migrated to a 
new system similar to Chrome and WebRTC, so you don't need to worry about that.

For the wiki pages at https://code.google.com/p/libyuv/w/list, I suggest you 
convert them to Markdown (http://en.wikipedia.org/wiki/Markdown) documents and 
check them into the source tree. If you put a README.md in the roof of the 
repo, it will automatically be displayed when you visit the Git mirror with the 
Gitiles Web UI at https://chromium.googlesource.com/external/libyuv.

See https://chromium.googlesource.com/v8/v8 for such an example (the contents 
of that page is in their 
https://chromium.googlesource.com/v8/v8/+/master/README.md).

Original comment by kjellan...@google.com on 8 May 2015 at 7:01

GoogleCodeExporter commented 9 years ago
gcl suggests switching to git or pin to an old version:

Oh hai! You are using subversion. Chrome infra is eager to get rid of
svn support so please switch to git.
Tracking bug: http://crbug.com/475320
Request a new git repository at:
  https://code.google.com/p/chromium/issues/entry?template=Infra-Git

If subversion support is needed, pin your depot_tools to
c20f470011e2ea4d81527976f3bded2c13e258af and set the env var
DEPOT_TOOLS_UPDATE=0
Thank you for your business!

Original comment by fbarch...@chromium.org on 1 Jun 2015 at 10:33

GoogleCodeExporter commented 9 years ago
Libyuv has switched to Gerrit https://chromium.googlesource.com/libyuv/libyuv/
But there is still something to do: 
https://code.google.com/p/libyuv/issues/detail?id=452

Original comment by no...@chromium.org on 9 Jun 2015 at 10:29

GoogleCodeExporter commented 9 years ago

Original comment by no...@chromium.org on 9 Jun 2015 at 10:29