Git development
 help / color / mirror / Atom feed
From: "Michal Suchánek" <msuchanek@suse.de>
To: Emily Shaffer <nasamuffin@google.com>
Cc: git@vger.kernel.org
Subject: Re: -q option for git to suppress informational messages?
Date: Fri, 13 Oct 2023 08:49:16 +0200	[thread overview]
Message-ID: <20231013064916.GC6241@kitsune.suse.cz> (raw)
In-Reply-To: <CAJoAoZ=MrjjfH6Noganejey0bAaB=d+jH_rXAqbscPG8E0m3Pw@mail.gmail.com>

Hello,

On Thu, Oct 12, 2023 at 01:46:09PM -0700, Emily Shaffer wrote:
> On Thu, Oct 12, 2023 at 11:53 AM Michal Suchánek <msuchanek@suse.de> wrote:
> >
> > Hello,
> >
> > when using git in scripts I find that many git commands insist on
> > printing informational messages, and the only way to avoid this is to
> > sent the output to /dev/null.
> 
> Michal, you might want to investigate further whether there is a
> plumbing-specific command that meets the needs you're concerned about
> instead. Those commands will not have additional human-facing output,
> and have a stronger guarantee around backwards-compatibility than the
> human-facing commands do.
> 
> Commands which count as "plumbing" can be located in `git help git` in
> the full list of subcommands; if you're not sure what alternative to
> use, I think you can feel free to describe what you're trying to do
> here and get advice on which plumbing commands to use instead of
> porcelain ones.

I want to replicate the repository data between multiple machines.

Git is 'distributed' VCS but AFAICS it supports replicating repositories
very poorly.

In one direction there is git push which has convenient --mirror option
and also can be scripted to replicate only selected references. AFAICS
there is no lower level command that can be used. There are commands for
uploading data to the remote repository but only push updates
references, no -q option.

In the other direction there is git remote. Of course there is no
cross-reference from git push, cross-references are for losers that
don't know everything about the thing. There are lower level commands
that could be used instead I suppose. Commands for downloading data are
available as well as for updating local references, and for one fetch
does provide a -q option. Also unlike push git remote cannot operate on
commandline arguments alone, it requires configuration. Rewriting it
using lower level commands might bring the benefit of not requiring
that.

However, this whole suggestion somewhat sounds along the lines
 - The shape of this chisel is not great, maybe it could be improved?
 - The other side of the hammer has an edge, maybe you could do
   without a chisel?

Thanks

Michal

      reply	other threads:[~2023-10-13  6:49 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-12 18:53 -q option for git to suppress informational messages? Michal Suchánek
2023-10-12 20:46 ` Emily Shaffer
2023-10-13  6:49   ` Michal Suchánek [this message]

Reply instructions:

You may reply publicly 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:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

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

  git send-email \
    --in-reply-to=20231013064916.GC6241@kitsune.suse.cz \
    --to=msuchanek@suse.de \
    --cc=git@vger.kernel.org \
    --cc=nasamuffin@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox