help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: git:


From: Bob Proulx
Subject: Re: git:
Date: Fri, 27 Feb 2015 17:03:40 -0700
User-agent: Mutt/1.5.23 (2014-03-12)

J. David Boyd wrote:
> Gregor Zattler writes:
> > -;;;### (autoloads nil "rmailsum" "rmailsum.el" 
> > "e3943ef45946f10b9b5cab8097d7f271")
> > +;;;### (autoloads nil "rmailsum" "rmailsum.el" 
> > "e41d88a5c472a084090c2aad1ef4971f")
> > Any idea why this happens and what to do aginst this?
>
> I have the same thing happen occasionally .

Like Michael suggested in his response this feels like a bug to me.
It isn't reasonable to have things modifying source files all of the
time.  It would be good to get it reported and fixed.

> I just go up a level, mv my 'emacs' to 'emacs.xxx' or something, and reclone
> the directory.
> 
> Much faster than trying to figure out why, since I don't care really.

Much simpler would be to simply reset and overwrite the "bad" file
with the good one.  No need to re-clone the entire directory.

Re-cloning the entire directory isn't very bandwidth friendly since
emacs is quite large.  Downloading the entire thing again is rather
hard on the upstream vcs.savannah server.  (Especially for a few hours
before it was compressed when it was 13G!  It is now 343M compacted
and much more reasonable but that is still large.)  Saving that
bandwidth is significant.  And the entire point of having a
distributed version control system.

This following will overwrite the current copy of rmail.el with the
copy from version control.  If that was the only file modified then at
that point a subsequent git pull should work since the working copy
was then clean and not locally modified.

  git checkout lisp/mail/rmail.el b/lisp/mail/rmail.el

Or alternatively if you want to reset *everything* then use the git
reset command to reset everything.

  git reset --hard

Warning!  Both of those commands overwrite your local copy of those
files.  That is what you want in this case.  But if I don't include
this warning someone will use git reset --hard and then complain that
their local changes were destroyed.  If I put in this warning then I
can say that they were told that was going to happen.

Please use version control for the purpose it is intended.  You have a
clone of the repository.  Having that clone means that you already
have a way to reset your working copy back to the pristine state.
Please don't download the hundreds of megs of data again and again.
Think of the kittens! :-)

Bob



reply via email to

[Prev in Thread] Current Thread [Next in Thread]