list mirror (unofficial, one of many)
 help / color / Atom feed
From: Stefan Beller <>
To: Duy Nguyen <>
Cc: Ian Norton <>, Git Mailing List <>
Subject: Re: Are concurrent git operations on the same repo safe?
Date: Tue, 6 Feb 2018 09:30:47 -0800
Message-ID: <> (raw)
In-Reply-To: <>

On Tue, Feb 6, 2018 at 2:16 AM, Duy Nguyen <> wrote:
> On Tue, Feb 6, 2018 at 3:16 AM, Ian Norton <> wrote:
>> Hi all,
>> I'm generally used to the idea that if a thing is not marked as
>> "thread-safe" then it isn't thread safe, but I thought I'd ask anyway
>> to be sure.
>> Is it safe for me to do several operations with git concurrently on
>> the same local repo?
> Off the top of my head, object database access (e.g. things in
> .git/objects), refs updates (.git/refs) and .git/index should handle
> concurrent operations fine (or in the worst case you get "some
> operation is ongoing, aborted" and you need to try again but not
> corruption or anything else). I think we generally try to make it safe
> concurrently.
>> Specifically I'm trying to speed up "git
>> submodule update" by doing several at the same time.  I've noticed
>> some odd side effects afterwards though when trying to commit changes
>> to my super project.
> submodule is a hot area with lots of development lately I think,
> perhaps you're seeing some bugs... CCing at least one submodule
> person...
>> Apologies if this is answered elsewhere, my google-foo is weak today.
>> Many thanks
>> Ian

"git submodule update" has the network part parallelized,
but not the local part IIRC. (That is cloning/fetching submodules
can be done with "-j <n>", but the local checkout is still serial for
UX purposes, i.e. it wants to stop at the first conflict and only
have one conflict at a time)

Which odd side effects do you see?
I'd be curious to see if that is a bug in the code or documentation.


  reply index

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-05 20:16 Ian Norton
2018-02-06 10:16 ` Duy Nguyen
2018-02-06 17:30   ` Stefan Beller [this message]
2018-02-06 20:10 ` Jonathan Nieder
2018-02-06 20:26   ` Ian Norton

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

  List information:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link list mirror (unofficial, one of many)

Archives are clonable:
	git clone --mirror
	git clone --mirror http://ou63pmih66umazou.onion/git
	git clone --mirror http://czquwvybam4bgbro.onion/git
	git clone --mirror http://hjrcffqmbrq6wope.onion/git

Newsgroups are available over NNTP:

 note: .onion URLs require Tor:
       or Tor2web:

AGPL code for this site: git clone public-inbox