gavioto / rietveld

Automatically exported from code.google.com/p/rietveld
Apache License 2.0
0 stars 0 forks source link

gcl commit <cl> committed files from a different changelist #446

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
My apologies if reitveld is not the correct project to file this against, 
and/or if this was simple operator error on my part.

Yesterday I submitted an old CL into the O3D project using gcl commit, and the 
submit included a few changes that were in a different CL.

The CL I was committing was on codereview.chromium.org at 
https://codereview.chromium.org/8569002/ - corresponding to "changelist plugin" 
locally on my workstation.

There were three files in a different CL that I was planning on landing later: 
https://codereview.chromium.org/8544006/ - these files were svn cp'd from other 
files in the repository. This corresponds to "changelist gypfiles" locally on 
my workstation.

Before committing, gcl status showed:
$ gcl status

--- Changelist gypfiles (Note: this changelist contains files outside this 
directory):
M      build/o3d_all.gyp
M      build/o3d_minimal.gyp
M      build/branding.gypi
M      build/common.gypi
A  +   ppapi_plugin/ppapi_plugin.gyp
A  +   ppapi_plugin/idl/get_idl_files.py
A  +   ppapi_plugin/idl/idl.gyp
M      core/core.gyp

--- Changelist plugin:
M      DEPS
A      ppapi_plugin
A      ppapi_plugin/cross
A  +   ppapi_plugin/cross/main.cc
A  +   ppapi_plugin/cross/stream_manager.cc
A  +   ppapi_plugin/cross/main.h
A  +   ppapi_plugin/cross/stream_manager.h
A  +   ppapi_plugin/cross/main_thread_task_poster.cc
A  +   ppapi_plugin/cross/main_thread_task_poster.h
A      ppapi_plugin/cross/o3d_ppapi_instance.cc
A      ppapi_plugin/cross/o3d_ppapi_instance.h
A  +   ppapi_plugin/cross/plugin_main.h
A  +   ppapi_plugin/cross/config.h
A  +   ppapi_plugin/cross/async_loading.cc
A  +   ppapi_plugin/cross/whitelist.cc
A  +   ppapi_plugin/cross/archive_request_static_glue.cc
A  +   ppapi_plugin/cross/async_loading.h
A  +   ppapi_plugin/cross/config_common.cc
A  +   ppapi_plugin/cross/archive_request_static_glue.h
A  +   ppapi_plugin/cross/whitelist.h
A  +   ppapi_plugin/cross/texture_static_glue.cc
A      ppapi_plugin/linux
A  +   ppapi_plugin/linux/envvars.cc
A  +   ppapi_plugin/linux/config.cc
A  +   ppapi_plugin/linux/envvars.h
A  +   ppapi_plugin/linux/main_linux.cc
M      plugin/o3d_binding.py

--- Not in any changelist:
M      samples/hellocube-colors.html
M      samples/helloworld.html
M      samples/o3djs/util.js
M      gypbuild.py
A      ppapi_plugin/idl
?      build/out
?      samples/samples_gen.gyp
?      samples/simpleviewer/assets/cube
?      samples/assets/seven_shapes
?      samples/assets/teapot
?      samples/assets/yard
?      documentation/parser.out
?      ppapi_plugin/idl/parser.out
?      plugin/idl/parser.out

After approval, I saw the following when I committed:
$ gcl commit plugin
Loaded authentication cookies from <some-local-path-I've-redacted>
Running presubmit commit checks ...

Presubmit checks passed.
Sending        DEPS
Sending        plugin/o3d_binding.py
Adding         ppapi_plugin
Adding         ppapi_plugin/cross
Adding         ppapi_plugin/cross/archive_request_static_glue.cc
Adding         ppapi_plugin/cross/archive_request_static_glue.h
Adding         ppapi_plugin/cross/async_loading.cc
Adding         ppapi_plugin/cross/async_loading.h
Adding         ppapi_plugin/cross/config.h
Adding         ppapi_plugin/cross/config_common.cc
Adding         ppapi_plugin/cross/main.cc
Adding         ppapi_plugin/cross/main.h
Adding         ppapi_plugin/cross/main_thread_task_poster.cc
Adding         ppapi_plugin/cross/main_thread_task_poster.h
Adding         ppapi_plugin/cross/o3d_ppapi_instance.cc
Adding         ppapi_plugin/cross/o3d_ppapi_instance.h
Adding         ppapi_plugin/cross/plugin_main.h
Adding         ppapi_plugin/cross/stream_manager.cc
Adding         ppapi_plugin/cross/stream_manager.h
Adding         ppapi_plugin/cross/texture_static_glue.cc
Adding         ppapi_plugin/cross/whitelist.cc
Adding         ppapi_plugin/cross/whitelist.h
Adding         ppapi_plugin/idl
Adding         ppapi_plugin/idl/get_idl_files.py
Adding         ppapi_plugin/idl/idl.gyp
Adding         ppapi_plugin/linux
Adding         ppapi_plugin/linux/config.cc
Adding         ppapi_plugin/linux/envvars.cc
Adding         ppapi_plugin/linux/envvars.h
Adding         ppapi_plugin/linux/main_linux.cc
Adding         ppapi_plugin/ppapi_plugin.gyp
Transmitting file data ...........................
Committed revision 202953.

Note the following three (in "gypfiles" CL, not "plugin" CL):
Adding         ppapi_plugin/idl/get_idl_files.py
Adding         ppapi_plugin/idl/idl.gyp
Adding         ppapi_plugin/ppapi_plugin.gyp

After the commit, gcl status shows:
$ gcl status

--- Changelist gypfiles (Note: this changelist contains files outside this 
directory):
M      core/core.gyp
M      build/o3d_minimal.gyp
M      build/branding.gypi
M      build/common.gypi
M      build/o3d_all.gyp

--- Not in any changelist:
M      samples/o3djs/util.js
M      samples/hellocube-colors.html
M      samples/helloworld.html
M      gypbuild.py
?      plugin/idl/parser.out
?      build/out
?      samples/samples_gen.gyp
?      samples/assets/seven_shapes
?      samples/assets/teapot
?      samples/assets/yard
?      samples/simpleviewer/assets/cube
?      documentation/parser.out
?      ppapi_plugin/idl/parser.out

e.g. the three files got committed, as well as removed from my local gypfiles 
changelist.

In this particular case it was "no harm, no foul" as the files weren't yet 
referenced by anything in the repository, and I can proceed landing the 
gypfiles CL now that it's approved so I don't need to do a whole 
revert/resubmit pass, but I could imagine cases where this could have had 
actual unexpected negative consequences.

Also of note, reitveld's UI now shows "Committed patchset #32 manually as 
r202953 (presubmit successful)." despite it really being "patchset #32 plus 
some other bits".

My rev of depot_tools (accoridng to git log in my depot_tools dir) is commit 
90d30c6065ef90b41a393521140d4e5662d65608 with git-svn-id: 
svn://svn.chromium.org/chrome/trunk/tools/depot_tools@202879 
0039d316-1c4b-4281-b951-d872f2087c98 - so I think this corresponds to 
depot_tools @ r202879

Original issue reported on code.google.com by jhorwich@chromium.org on 30 May 2013 at 5:15