[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Yet another git submodule rant
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [Qemu-devel] Yet another git submodule rant |
Date: |
Wed, 8 Nov 2017 10:30:35 -0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 |
On 11/08/2017 08:48 AM, Thomas Huth wrote:
> On 08.11.2017 11:53, Gerd Hoffmann wrote:
>> On Wed, Nov 08, 2017 at 10:57:21AM +0100, Thomas Huth wrote:
>>>
>>> That automatic git submodule stuff now broke my workflow again. I
>>> usually keep the git repository on my laptop and then simply rsync the
>>> sources (without .git directories) to my target machine to compile it
>>> there.
>>
>> How about excluding all files listed in .gitignore from rsync? Which I
>> guess would be a good idea anyway because you don't want sync over the
>> build artifacts to the target machine if you want compile there. Might
>> be as simple as "rsync --exclude-from .gitignore" (didn't test though).
>
> That's a neat idea, thanks, I'll give it a try!
>
>> Or syncronize using git instead of rsync. This is what I am doing.
>
> Tried that in the past already, but it didn't really feel right (I don't
> want to check in each time before syncing my files)...
TIL: git push --recurse-submodules=on-demand
GIT-PUSH(1)
--recurse-submodules=check|on-demand|only|no
[...] If check is used Git will verify that all submodule
commits that changed in the revisions to be pushed are
available on at least one remote of the submodule. If any
commits are missing the push will be aborted and exit with
non-zero status. If on-demand is used all submodules that
changed in the revisions to be pushed will be pushed. If
on-demand was not able to push all necessary revisions it
will also be aborted and exit with non-zero status. [...]
GIT-CONFIG(1)
push.recurseSubmodules
Make sure all submodule commits used by the revisions to be
pushed are available on a remote-tracking branch. If the
value is check then Git will verify that all submodule
commits that changed in the revisions to be pushed are
available on at least one remote of the submodule. If any
commits are missing, the push will be aborted and exit with
non-zero status. If the value is on-demand then all
submodules that changed in the revisions to be pushed will
be pushed. If on-demand was not able to push all necessary
revisions it will also be aborted and exit with non-zero
status. [...]
Re: [Qemu-devel] Yet another git submodule rant, Gerd Hoffmann, 2017/11/08
Re: [Qemu-devel] Yet another git submodule rant, Philippe Mathieu-Daudé, 2017/11/08
- Re: [Qemu-devel] Yet another git submodule rant, Daniel P. Berrange, 2017/11/08
- Re: [Qemu-devel] Yet another git submodule rant, Alexey Kardashevskiy, 2017/11/10
- Re: [Qemu-devel] Yet another git submodule rant, Daniel P. Berrange, 2017/11/10
- Re: [Qemu-devel] Yet another git submodule rant, Alexey Kardashevskiy, 2017/11/10
- Re: [Qemu-devel] Yet another git submodule rant, Peter Maydell, 2017/11/10
- Re: [Qemu-devel] Yet another git submodule rant, Alexey Kardashevskiy, 2017/11/10
- Re: [Qemu-devel] Yet another git submodule rant, Daniel P. Berrange, 2017/11/10
- Re: [Qemu-devel] Yet another git submodule rant, Alexey Kardashevskiy, 2017/11/10