git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Dan Johnson <computerdruid@gmail.com>
To: Alexey Muranov <alexey.muranov@gmail.com>
Cc: Jeff King <peff@peff.net>, Stefan Haller <lists@haller-berlin.de>,
	git@vger.kernel.org
Subject: Re: Feature request: fetch --prune by default
Date: Thu, 19 Jul 2012 12:48:04 -0400	[thread overview]
Message-ID: <CAPBPrntB3ixuRFDP5fp8saJoEZvYOEd631Nh2=-WGudB-UK=kw@mail.gmail.com> (raw)
In-Reply-To: <CA80E335-AD87-4DFC-9569-A010D3E850C0@gmail.com>

On Thu, Jul 19, 2012 at 12:40 PM, Alexey Muranov
<alexey.muranov@gmail.com> wrote:
> On 19 Jul 2012, at 13:55, Jeff King wrote:
>
>> I agree it would be much less confusing. However, one downside is that
>> we do not keep reflogs on deleted branches (and nor did the commits in
>> remote branches necessarily make it into the HEAD reflog). That makes
>> "git fetch" a potentially destructive operation (you irrevocably lose
>> the notion of which remote branches pointed where before the fetch, and
>> you open up new commits to immediate pruning by "gc --auto".
>
> If i understand correctly, existence of a reflog entry will not stop "gc" from removing a commit, will it?
> In this case, if a remote branch was rebased or reset, commits can be lost anyway, right?
From the git-gc man page:
git gc tries very hard to be safe about the garbage it collects. In
particular, it will keep not only objects referenced by your current
set of branches and tags, but also objects referenced by the index,
remote-tracking branches, refs saved by git filter-branch in
refs/original/, or reflogs (which may reference commits in branches
that were later amended or rewound).

So yes, a reflog entry does stop gc from removing objects, including
commits. It will expire old reflog entries (90 days by default)
though, so it's not like they will stay around forever.
-- 
-Dan

  reply	other threads:[~2012-07-19 16:48 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-19  7:30 Feature request: fetch --prune by default Alexey Muranov
2012-07-19 11:55 ` Jeff King
2012-07-19 14:03   ` Dan Johnson
2012-07-19 15:11     ` Stefan Haller
2012-08-16 23:22     ` Junio C Hamano
2012-08-21  6:51       ` Jeff King
2013-06-20 19:22     ` Sam Roberts
2012-07-19 16:21   ` Alexey Muranov
2012-07-19 17:34     ` Konstantin Khomoutov
2012-07-19 21:20       ` Alexey Muranov
2012-07-19 21:57         ` Alexey Muranov
2012-07-20  7:11         ` Johannes Sixt
2012-07-20  7:28           ` Alexey Muranov
2012-08-16 23:27             ` Junio C Hamano
2012-07-19 16:40   ` Alexey Muranov
2012-07-19 16:48     ` Dan Johnson [this message]
2012-07-19 16:51       ` Alexey Muranov
2012-07-19 21:32   ` [RFC/PATCH 0/3] reflog graveyard Jeff King
2012-07-19 21:33     ` [PATCH 1/3] retain reflogs for deleted refs Jeff King
2012-07-19 22:23       ` Alexey Muranov
2012-07-20 14:26         ` Jeff King
2012-07-20 14:32           ` Alexey Muranov
2012-07-19 22:36       ` Junio C Hamano
2012-07-20 14:43         ` Jeff King
2012-07-20 15:07           ` Jeff King
2012-07-20 15:39             ` Junio C Hamano
2012-07-20 15:42           ` Junio C Hamano
2012-07-20 15:50             ` Jeff King
2012-08-16 23:29         ` Junio C Hamano
2012-07-20  9:49       ` Michael Haggerty
2012-07-20 15:44         ` Jeff King
2012-07-20 16:37           ` Johannes Sixt
2012-07-20 17:09             ` Jeff King
2012-07-22 11:03               ` Alexey Muranov
2012-07-26 12:47               ` Nguyen Thai Ngoc Duy
2012-07-26 16:26                 ` Alexey Muranov
2012-07-26 16:41                   ` Matthieu Moy
2012-07-26 16:59                     ` Jeff King
2012-07-26 17:24                       ` Alexey Muranov
2012-07-26 17:46               ` Junio C Hamano
2012-07-26 17:52                 ` Jeff King
2012-07-22 11:10           ` Alexey Muranov
2012-07-22 11:12             ` Alexey Muranov
2012-07-22 13:14             ` Jeff King
2012-07-22 14:40               ` Alexey Muranov
2012-07-22 15:50                 ` Jeff King
2012-07-20 16:32         ` Johannes Sixt
2012-08-18 17:14       ` [RFC 0/3] Reflogs for deleted refs: fix breakage and suggest namespace change mhagger
2012-08-18 17:14         ` [RFC 1/3] t9300: format test in modern style prior to modifying it mhagger
2012-08-18 17:14         ` [RFC 2/3] Delete reflogs for dead references to allow pruning mhagger
2012-08-21  8:33           ` Jeff King
2012-08-18 17:14         ` [RFC 3/3] Change naming convention for the reflog graveyard mhagger
2012-08-18 20:39         ` [RFC 0/3] Reflogs for deleted refs: fix breakage and suggest namespace change Junio C Hamano
2012-08-18 21:11           ` Alexey Muranov
2012-08-19  0:02             ` Junio C Hamano
2012-08-19  7:07               ` Alexey Muranov
2012-08-19  7:15               ` Alexey Muranov
2012-08-19 11:28               ` Alexey Muranov
2012-08-19 17:38                 ` Junio C Hamano
2012-08-19 22:09                   ` Alexey Muranov
2012-08-20  0:26                     ` Junio C Hamano
2012-08-20  1:01                       ` Junio C Hamano
2012-08-20 11:32                       ` Alexey Muranov
2012-08-20 11:57                         ` Alexey Muranov
2012-08-19 13:19           ` Michael Haggerty
2012-08-19 16:27             ` Junio C Hamano
2012-08-21  8:27           ` Jeff King
2012-08-21 17:56             ` Junio C Hamano
2012-07-19 21:33     ` [PATCH 2/3] teach sha1_name to look in graveyard reflogs Jeff King
2012-07-19 22:39       ` Junio C Hamano
2012-07-20 15:53         ` Jeff King
2012-07-22 20:53           ` Junio C Hamano
2012-07-19 21:33     ` [PATCH 3/3] add tests for reflogs of deleted refs Jeff King

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

  List information: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to='CAPBPrntB3ixuRFDP5fp8saJoEZvYOEd631Nh2=-WGudB-UK=kw@mail.gmail.com' \
    --to=computerdruid@gmail.com \
    --cc=alexey.muranov@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=lists@haller-berlin.de \
    --cc=peff@peff.net \
    /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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).