* Re: Choosing a versioning system
2008-03-30 17:21 ` Choosing a versioning system (was My dream work log:) rustom
@ 2008-03-30 17:50 ` Thierry Volpiatto
2008-03-30 18:32 ` Choosing a versioning system (was My dream work log:) Mike Treseler
` (4 subsequent siblings)
5 siblings, 0 replies; 33+ messages in thread
From: Thierry Volpiatto @ 2008-03-30 17:50 UTC (permalink / raw)
To: rustom; +Cc: help-gnu-emacs
rustom <rustompmody@gmail.com> writes:
> On Mar 29, 10:18 pm, Mike Treseler <mike_trese...@comcast.net> wrote:
>> B. T. Raven wrote:
>> > Check out Menu>Tools>Version Control
>>
>> See also:
>>
>> Menu>Tools>Compare
>>
>> -- Mike Treseler
>
> Out of curiosity I did this and found that the default version control
> system that gets invoked is rcs.
> I wonder if this (default) is the best advice to a noob??
> My impression is that rcs was superseded by cvs by svn by.. well... a
> lot of competition!
> This is a genuine question --- I'm familiar with many versioning
> systems but not too good at any of them.
>
> So what do most emacs-ers use?
>
RCS is a very good version control system to start.
It can only manage correctly single files and only localy.
The others versions control systems are more complex but have of course
much more features like managing big set of files over remote access.
If you want to manage local files only, RCS is ok.
It is very well integrated with vc (see emacs manuel)
Personnaly, i use now mercurial with dvc, but also svn and for some local
files rcs.
--
A + Thierry
Pub key: http://pgp.mit.edu
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Choosing a versioning system (was My dream work log:)
2008-03-30 17:21 ` Choosing a versioning system (was My dream work log:) rustom
2008-03-30 17:50 ` Choosing a versioning system Thierry Volpiatto
@ 2008-03-30 18:32 ` Mike Treseler
2008-03-31 19:06 ` Choosing a versioning system Joel J. Adamson
[not found] ` <mailman.9728.1206990435.18990.help-gnu-emacs@gnu.org>
2008-03-30 18:59 ` Choosing a versioning system (was My dream work log:) Oleg Katsitadze
` (3 subsequent siblings)
5 siblings, 2 replies; 33+ messages in thread
From: Mike Treseler @ 2008-03-30 18:32 UTC (permalink / raw)
To: help-gnu-emacs
rustom wrote:
> Out of curiosity I did this and found that the default version control
> system that gets invoked is rcs.
> I wonder if this (default) is the best advice to a noob??
I use rcs for my own casual use and svn for group projects.
rcs requires no setup and is well integrated into emacs.
For svn, I am using kdesvn, which worked so well out of the box
that I have not yet explored the various emacs interfaces.
-- Mike Treseler
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Choosing a versioning system
2008-03-30 18:32 ` Choosing a versioning system (was My dream work log:) Mike Treseler
@ 2008-03-31 19:06 ` Joel J. Adamson
[not found] ` <mailman.9728.1206990435.18990.help-gnu-emacs@gnu.org>
1 sibling, 0 replies; 33+ messages in thread
From: Joel J. Adamson @ 2008-03-31 19:06 UTC (permalink / raw)
To: Mike Treseler; +Cc: help-gnu-emacs
Mike Treseler <mike_treseler@comcast.net> writes:
> rustom wrote:
>
>> Out of curiosity I did this and found that the default version control
>> system that gets invoked is rcs.
>> I wonder if this (default) is the best advice to a noob??
>
> I use rcs for my own casual use and svn for group projects.
> rcs requires no setup and is well integrated into emacs.
> For svn, I am using kdesvn, which worked so well out of the box
> that I have not yet explored the various emacs interfaces.
psvn is excellent:
# svn co http://svn.collab.net/repos/svn/trunk/contrib/client-side/emacs
Checks it out.
Joel
--
Joel J. Adamson
Biostatistician
Pediatric Psychopharmacology Research Unit
Massachusetts General Hospital
Boston, MA 02114
(617) 643-1432
(303) 880-3109
Public key: http://pgp.mit.edu
The information transmitted in this electronic communication is intended only
for the person or entity to whom it is addressed and may contain confidential
and/or privileged material. Any review, retransmission, dissemination or other
use of or taking of any action in reliance upon this information by persons or
entities other than the intended recipient is prohibited. If you received this
information in error, please contact the Compliance HelpLine at 800-856-1983 and
properly dispose of this information.
^ permalink raw reply [flat|nested] 33+ messages in thread
[parent not found: <mailman.9728.1206990435.18990.help-gnu-emacs@gnu.org>]
* Re: Choosing a versioning system (was My dream work log:)
2008-03-30 17:21 ` Choosing a versioning system (was My dream work log:) rustom
2008-03-30 17:50 ` Choosing a versioning system Thierry Volpiatto
2008-03-30 18:32 ` Choosing a versioning system (was My dream work log:) Mike Treseler
@ 2008-03-30 18:59 ` Oleg Katsitadze
[not found] ` <mailman.9661.1206909269.18990.help-gnu-emacs@gnu.org>
` (2 subsequent siblings)
5 siblings, 0 replies; 33+ messages in thread
From: Oleg Katsitadze @ 2008-03-30 18:59 UTC (permalink / raw)
To: rustom; +Cc: help-gnu-emacs
On Sun, Mar 30, 2008 at 10:21:34AM -0700, rustom wrote:
> system that gets invoked is rcs.
> I wonder if this (default) is the best advice to a noob??
This is a good choice if all you want to control is a single file (or
a collection of unrelated files). Great for keeping track of changes
to configuration files.
> My impression is that rcs was superseded by cvs by svn by.. well... a
> lot of competition!
These make sense when you have a "project" -- a collection of related
files under directory hierarchy.
> This is a genuine question --- I'm familiar with many versioning
> systems but not too good at any of them.
This is my understanding:
CVS is good but has a few flaws. Don't use it for new projects.
SVN (subversion) is a successor to CVS with the flaws fixed and new
features added. I've started using it recently and it seems to be
just great.
Distributed systems (git, monotone) are good when you don't have (or
don't want to have) a server to keep the repository. Each developer's
snapshot is a repository in its own right, or something like that.
(I've never used such a system myself.)
HTH,
Oleg
^ permalink raw reply [flat|nested] 33+ messages in thread
[parent not found: <mailman.9661.1206909269.18990.help-gnu-emacs@gnu.org>]
* Re: Choosing a versioning system (was My dream work log:)
[not found] ` <mailman.9661.1206909269.18990.help-gnu-emacs@gnu.org>
@ 2008-03-31 3:55 ` rustom
2008-03-31 6:38 ` Choosing a versioning system Thierry Volpiatto
0 siblings, 1 reply; 33+ messages in thread
From: rustom @ 2008-03-31 3:55 UTC (permalink / raw)
To: help-gnu-emacs
On Mar 30, 11:59 pm, Oleg Katsitadze <oleg...@gmail.com> wrote:
> CVS is good but has a few flaws. Don't use it for new projects.
>
> SVN (subversion) is a successor to CVS with the flaws fixed and new
> features added.
>
> Distributed systems (git, monotone) are good when you don't have (or
> don't want to have) a server to keep the repository.
Yes that is my impression also.
What your reply suggests however is that we are seeing a cycle of
simple-complex-simple:
rcs -- simple (no server)
cvs,svn -- more complex because needs centralized server
modern distributed ones -- once again no need for server but with the
lock model replaced with the merge model (see
http://svnbook.red-bean.com/en/1.2/svn.basic.vsn-models.html )
And so I was wondering if these systems give the best of all worlds?
But... there are just too many to choose from!! bzr, darcs, git,
mercurial, monotone...
[Alphabetically listed :-) ]
So my question is: For people living much of their lives in emacs and
among other things trying to keep their own stuff versioned, what do
you use??
For the choice rcs-for-sysadmin files I see 3 options:
-- make the ,v file next to the original file
-- make the ,v file in an RCS directory -- but that way one could end
up having tens (100s?) of RCS directories in /etc alone!
-- there is some way (I dont know of) of making one RCS repo for all
files or at least all sysadmin file. So that something like 'I keep my
home in svn' http://kitenet.net/~joey/svnhome/ is possible with RCS
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Choosing a versioning system
2008-03-31 3:55 ` rustom
@ 2008-03-31 6:38 ` Thierry Volpiatto
2008-03-31 21:06 ` Mike Mattie
0 siblings, 1 reply; 33+ messages in thread
From: Thierry Volpiatto @ 2008-03-31 6:38 UTC (permalink / raw)
To: rustom; +Cc: help-gnu-emacs
rustom <rustompmody@gmail.com> writes:
> On Mar 30, 11:59 pm, Oleg Katsitadze <oleg...@gmail.com> wrote:
>> CVS is good but has a few flaws. Don't use it for new projects.
>>
>> SVN (subversion) is a successor to CVS with the flaws fixed and new
>> features added.
>>
>> Distributed systems (git, monotone) are good when you don't have (or
>> don't want to have) a server to keep the repository.
>
> Yes that is my impression also.
> What your reply suggests however is that we are seeing a cycle of
> simple-complex-simple:
> rcs -- simple (no server)
> cvs,svn -- more complex because needs centralized server
> modern distributed ones -- once again no need for server but with the
> lock model replaced with the merge model (see
> http://svnbook.red-bean.com/en/1.2/svn.basic.vsn-models.html )
>
> And so I was wondering if these systems give the best of all worlds?
>
> But... there are just too many to choose from!! bzr, darcs, git,
> mercurial, monotone...
> [Alphabetically listed :-) ]
>
> So my question is: For people living much of their lives in emacs and
> among other things trying to keep their own stuff versioned, what do
> you use??
>
> For the choice rcs-for-sysadmin files I see 3 options:
>
> -- make the ,v file next to the original file
> -- make the ,v file in an RCS directory -- but that way one could end
> up having tens (100s?) of RCS directories in /etc alone!
> -- there is some way (I dont know of) of making one RCS repo for all
> files or at least all sysadmin file. So that something like 'I keep my
> home in svn' http://kitenet.net/~joey/svnhome/ is possible with RCS
>
RCS do one directory RCS by directory.
thats mean that for /etc for example you will have one directory RCS for all the
files you have under version in this directory.
If you register a file in a subdirectory of /etc you will have a RCS directory in
this subdirectory ....etc..
If you use RCS for file in /etc think at unlocking the files that can be dynamically
modified by the system.
But another time, if you want to put under version a big set of files like /etc,
use another version system.
CVS ==> bof...
SVN ==> good but a central repository.
mercurial ==> very good, own repo, you can use it with dvc.
git ==> seem to be the more advanced, work with dvc.
bzr ==> seem good, never tried, work with dvc.
With mercurial, if you want to put under version all /etc,
just do while you have cd in /etc:
hg init.==> thats done, all files in /etc and all subdir are under version!
--
A + Thierry
Pub key: http://pgp.mit.edu
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Choosing a versioning system
2008-03-31 6:38 ` Choosing a versioning system Thierry Volpiatto
@ 2008-03-31 21:06 ` Mike Mattie
2008-04-03 18:25 ` Nikolaj Schumacher
0 siblings, 1 reply; 33+ messages in thread
From: Mike Mattie @ 2008-03-31 21:06 UTC (permalink / raw)
To: help-gnu-emacs
[-- Attachment #1: Type: text/plain, Size: 2853 bytes --]
On Mon, 31 Mar 2008 08:38:26 +0200
Thierry Volpiatto <thierry.volpiatto@gmail.com> wrote:
> rustom <rustompmody@gmail.com> writes:
>
> > On Mar 30, 11:59 pm, Oleg Katsitadze <oleg...@gmail.com> wrote:
> >> CVS is good but has a few flaws. Don't use it for new projects.
> >>
> >> SVN (subversion) is a successor to CVS with the flaws fixed and new
> >> features added.
> >>
> >> Distributed systems (git, monotone) are good when you don't have
> >> (or don't want to have) a server to keep the repository.
> >
> > Yes that is my impression also.
> > What your reply suggests however is that we are seeing a cycle of
> > simple-complex-simple:
> > rcs -- simple (no server)
> > cvs,svn -- more complex because needs centralized server
> > modern distributed ones -- once again no need for server but with
> > the lock model replaced with the merge model (see
> > http://svnbook.red-bean.com/en/1.2/svn.basic.vsn-models.html )
> >
> > And so I was wondering if these systems give the best of all worlds?
> >
> > But... there are just too many to choose from!! bzr, darcs, git,
> > mercurial, monotone...
> > [Alphabetically listed :-) ]
> >
> > So my question is: For people living much of their lives in emacs
> > and among other things trying to keep their own stuff versioned,
> > what do you use??
> >
> > For the choice rcs-for-sysadmin files I see 3 options:
> >
> > -- make the ,v file next to the original file
> > -- make the ,v file in an RCS directory -- but that way one could
> > end up having tens (100s?) of RCS directories in /etc alone!
> > -- there is some way (I dont know of) of making one RCS repo for all
> > files or at least all sysadmin file. So that something like 'I keep
> > my home in svn' http://kitenet.net/~joey/svnhome/ is possible with
> > RCS
> >
> RCS do one directory RCS by directory.
> thats mean that for /etc for example you will have one directory RCS
> for all the files you have under version in this directory.
> If you register a file in a subdirectory of /etc you will have a RCS
> directory in this subdirectory ....etc..
> If you use RCS for file in /etc think at unlocking the files that can
> be dynamically modified by the system.
> But another time, if you want to put under version a big set of files
> like /etc, use another version system.
> CVS ==> bof...
> SVN ==> good but a central repository.
I use svn mostly. A central repository makes backups easy, just dump the repo.
> mercurial ==> very good, own repo, you can use it with dvc.
> git ==> seem to be the more advanced, work with dvc.
> bzr ==> seem good, never tried, work with dvc.
>
> With mercurial, if you want to put under version all /etc,
> just do while you have cd in /etc:
> hg init.==> thats done, all files in /etc and all subdir are under
> version!
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Choosing a versioning system
2008-03-31 21:06 ` Mike Mattie
@ 2008-04-03 18:25 ` Nikolaj Schumacher
2008-04-03 18:51 ` Thierry Volpiatto
0 siblings, 1 reply; 33+ messages in thread
From: Nikolaj Schumacher @ 2008-04-03 18:25 UTC (permalink / raw)
To: Mike Mattie; +Cc: help-gnu-emacs
Mike Mattie <codermattie@gmail.com> wrote:
> On Mon, 31 Mar 2008 08:38:26 +0200
> Thierry Volpiatto <thierry.volpiatto@gmail.com> wrote:
>
> I use svn mostly. A central repository makes backups easy, just dump
> the repo.
A distributed system makes backups easier: Just checkout the repo. :)
regards,
Nikolaj Schumacher
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Choosing a versioning system
2008-04-03 18:25 ` Nikolaj Schumacher
@ 2008-04-03 18:51 ` Thierry Volpiatto
2008-04-04 16:41 ` Nikolaj Schumacher
0 siblings, 1 reply; 33+ messages in thread
From: Thierry Volpiatto @ 2008-04-03 18:51 UTC (permalink / raw)
To: Nikolaj Schumacher; +Cc: help-gnu-emacs
Nikolaj Schumacher <n_schumacher@web.de> writes:
> Mike Mattie <codermattie@gmail.com> wrote:
>
>> On Mon, 31 Mar 2008 08:38:26 +0200
>> Thierry Volpiatto <thierry.volpiatto@gmail.com> wrote:
>>
>> I use svn mostly. A central repository makes backups easy, just dump
>> the repo.
>
> A distributed system makes backups easier: Just checkout the repo. :)
>
>
> regards,
> Nikolaj Schumacher
>
>
It's not me who use "svn mostly" ;)
--
A + Thierry
Pub key: http://pgp.mit.edu
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Choosing a versioning system
2008-04-03 18:51 ` Thierry Volpiatto
@ 2008-04-04 16:41 ` Nikolaj Schumacher
2008-04-04 17:46 ` Thierry Volpiatto
0 siblings, 1 reply; 33+ messages in thread
From: Nikolaj Schumacher @ 2008-04-04 16:41 UTC (permalink / raw)
To: Thierry Volpiatto; +Cc: help-gnu-emacs
Thierry Volpiatto <thierry.volpiatto@gmail.com> wrote:
> Nikolaj Schumacher <n_schumacher@web.de> writes:
>
>> Mike Mattie <codermattie@gmail.com> wrote:
>>
>>> On Mon, 31 Mar 2008 08:38:26 +0200
>>> Thierry Volpiatto <thierry.volpiatto@gmail.com> wrote:
>>>
>>> I use svn mostly. A central repository makes backups easy, just dump
>>> the repo.
>>
>> A distributed system makes backups easier: Just checkout the repo. :)
>>
>> regards,
>> Nikolaj Schumacher
>>
> It's not me who use "svn mostly" ;)
Whoops, sorry. A missing C-k can lead to false prosecution. :)
But the quoting level shows that I was clearly just quoting Mike quoting
an empty statement of yours. :)
regards,
Nikolaj Schumacher
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Choosing a versioning system
2008-04-04 16:41 ` Nikolaj Schumacher
@ 2008-04-04 17:46 ` Thierry Volpiatto
0 siblings, 0 replies; 33+ messages in thread
From: Thierry Volpiatto @ 2008-04-04 17:46 UTC (permalink / raw)
To: Nikolaj Schumacher; +Cc: help-gnu-emacs
Nikolaj Schumacher <n_schumacher@web.de> writes:
> Thierry Volpiatto <thierry.volpiatto@gmail.com> wrote:
>
>> Nikolaj Schumacher <n_schumacher@web.de> writes:
>>
>>> Mike Mattie <codermattie@gmail.com> wrote:
>>>
>>>> On Mon, 31 Mar 2008 08:38:26 +0200
>>>> Thierry Volpiatto <thierry.volpiatto@gmail.com> wrote:
>>>>
>>>> I use svn mostly. A central repository makes backups easy, just dump
>>>> the repo.
>>>
>>> A distributed system makes backups easier: Just checkout the repo. :)
>>>
>>> regards,
>>> Nikolaj Schumacher
>>>
>> It's not me who use "svn mostly" ;)
>
> Whoops, sorry. A missing C-k can lead to false prosecution. :)
> But the quoting level shows that I was clearly just quoting Mike quoting
> an empty statement of yours. :)
Yeah! sure, no problems, just joking. ;)
--
A + Thierry
Pub key: http://pgp.mit.edu
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Choosing a versioning system
2008-03-30 17:21 ` Choosing a versioning system (was My dream work log:) rustom
` (3 preceding siblings ...)
[not found] ` <mailman.9661.1206909269.18990.help-gnu-emacs@gnu.org>
@ 2008-03-31 8:22 ` Tim X
2008-03-31 22:23 ` Timothy Hobbs
2008-03-31 19:04 ` Choosing a versioning system Joel J. Adamson
5 siblings, 1 reply; 33+ messages in thread
From: Tim X @ 2008-03-31 8:22 UTC (permalink / raw)
To: help-gnu-emacs
rustom <rustompmody@gmail.com> writes:
> On Mar 29, 10:18 pm, Mike Treseler <mike_trese...@comcast.net> wrote:
>> B. T. Raven wrote:
>> > Check out Menu>Tools>Version Control
>>
>> See also:
>>
>> Menu>Tools>Compare
>>
>> -- Mike Treseler
>
> Out of curiosity I did this and found that the default version control
> system that gets invoked is rcs.
> I wonder if this (default) is the best advice to a noob??
> My impression is that rcs was superseded by cvs by svn by.. well... a
> lot of competition!
> This is a genuine question --- I'm familiar with many versioning
> systems but not too good at any of them.
>
> So what do most emacs-ers use?
RCS and CVS/SVN/BZR/et. al. fulfill different purposes. The right one
depends on what you want to do.
RCS is a file based locking version control system. Only one person can
be editing a file at a time and they must check it back into the vc
system before someone else can edit it.
CVS/SVn are more directory/project based version control systems. They
use optimistic locking and merging to allow multiple people to work on
the files at once.
BZR/GIT and others are project/directory based, but focus more on a
distributed version control system.
I tend to use RCS for my own config files and one of the others for
projects where I'm working with multiple files in a well defined
'project' and especially if I'm working with a team.
Fropm your earlier posts on wanting a worklog, I suspect RCS would meet
your needs. It works very well, is simple to use, doesn't require any
special repository setup and is very stable.
Note that emacs is smart enough to handle multiple different
repositories, so don't be concerned that using RCS will prevent you from
using one of the others should the need arise.
Tim
--
tcross (at) rapttech dot com dot au
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Choosing a versioning system
2008-03-31 8:22 ` Tim X
@ 2008-03-31 22:23 ` Timothy Hobbs
2008-04-01 15:37 ` Automatic versioning (was: Choosing a versioning system) Joel J. Adamson
0 siblings, 1 reply; 33+ messages in thread
From: Timothy Hobbs @ 2008-03-31 22:23 UTC (permalink / raw)
To: EMACS list
So with RCS, do you press C-x v v every time you edit a file? Or is there a way to make it so that all files that you edit are automagically versioned?
^ permalink raw reply [flat|nested] 33+ messages in thread
* Automatic versioning (was: Choosing a versioning system)
2008-03-31 22:23 ` Timothy Hobbs
@ 2008-04-01 15:37 ` Joel J. Adamson
2008-04-01 20:48 ` Automatic versioning Timothy Hobbs
0 siblings, 1 reply; 33+ messages in thread
From: Joel J. Adamson @ 2008-04-01 15:37 UTC (permalink / raw)
To: Timothy Hobbs; +Cc: EMACS list
Timothy Hobbs <tim.thelion@gmail.com> writes:
> So with RCS, do you press C-x v v every time you edit a file? Or is
> there a way to make it so that all files that you edit are
> automagically versioned?
I check in (C-x v v) with an RCS-versioned file every time I am done
making changes to it (fixed a bug, or otherwise know I'm not going to
work on it for a while).
Do you mean you have multiple files you want to version together? For
that you should use CVS, SVN or another project-oriented system.
Joel
--
Joel J. Adamson
Biostatistician
Pediatric Psychopharmacology Research Unit
Massachusetts General Hospital
Boston, MA 02114
(617) 643-1432
(303) 880-3109
Public key: http://pgp.mit.edu
The information transmitted in this electronic communication is intended only
for the person or entity to whom it is addressed and may contain confidential
and/or privileged material. Any review, retransmission, dissemination or other
use of or taking of any action in reliance upon this information by persons or
entities other than the intended recipient is prohibited. If you received this
information in error, please contact the Compliance HelpLine at 800-856-1983 and
properly dispose of this information.
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Automatic versioning
2008-04-01 15:37 ` Automatic versioning (was: Choosing a versioning system) Joel J. Adamson
@ 2008-04-01 20:48 ` Timothy Hobbs
2008-04-02 13:39 ` Joel J. Adamson
2008-04-03 2:00 ` Kevin Rodgers
0 siblings, 2 replies; 33+ messages in thread
From: Timothy Hobbs @ 2008-04-01 20:48 UTC (permalink / raw)
To: EMACS list
No, I mean that I wish to have all files versioned, period. I don't care to
have to remember to version them when I edit them. But I really can't think of
a type of file that I edit that I don't want versioned. Even email drafts
should have versioning in my opinion. Maybe I'll make some way to synchronise
check ins with check offs in planner :D
Thank you,
Timothy
jadamson@partners.org (Joel J. Adamson) writes:
> Timothy Hobbs <tim.thelion@gmail.com> writes:
>
>> So with RCS, do you press C-x v v every time you edit a file? Or is
>> there a way to make it so that all files that you edit are
>> automagically versioned?
>
> I check in (C-x v v) with an RCS-versioned file every time I am done
> making changes to it (fixed a bug, or otherwise know I'm not going to
> work on it for a while).
>
> Do you mean you have multiple files you want to version together? For
> that you should use CVS, SVN or another project-oriented system.
>
> Joel
>
> --
> Joel J. Adamson
> Biostatistician
> Pediatric Psychopharmacology Research Unit
> Massachusetts General Hospital
> Boston, MA 02114
> (617) 643-1432
> (303) 880-3109
> Public key: http://pgp.mit.edu
>
> The information transmitted in this electronic communication is intended only
> for the person or entity to whom it is addressed and may contain confidential
> and/or privileged material. Any review, retransmission, dissemination or other
> use of or taking of any action in reliance upon this information by persons or
> entities other than the intended recipient is prohibited. If you received this
> information in error, please contact the Compliance HelpLine at 800-856-1983 and
> properly dispose of this information.
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Automatic versioning
2008-04-01 20:48 ` Automatic versioning Timothy Hobbs
@ 2008-04-02 13:39 ` Joel J. Adamson
2008-04-03 2:00 ` Kevin Rodgers
1 sibling, 0 replies; 33+ messages in thread
From: Joel J. Adamson @ 2008-04-02 13:39 UTC (permalink / raw)
To: Timothy Hobbs; +Cc: EMACS list
Timothy Hobbs <tim.thelion@gmail.com> writes:
First Tim sez:
> No, I mean that I wish to have all files versioned, period.
Then he sez:
> I don't care to have to remember to version them when I edit them.
For what do you want this versioning? Why is a timestamp not good
enough? How often do you save your buffers?
I save about every five seconds, or whenever I pause typing. Like just
then.
Joel
--
Joel J. Adamson
Biostatistician
Pediatric Psychopharmacology Research Unit
Massachusetts General Hospital
Boston, MA 02114
(617) 643-1432
(303) 880-3109
Public key: http://pgp.mit.edu
The information transmitted in this electronic communication is intended only
for the person or entity to whom it is addressed and may contain confidential
and/or privileged material. Any review, retransmission, dissemination or other
use of or taking of any action in reliance upon this information by persons or
entities other than the intended recipient is prohibited. If you received this
information in error, please contact the Compliance HelpLine at 800-856-1983 and
properly dispose of this information.
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Automatic versioning
2008-04-01 20:48 ` Automatic versioning Timothy Hobbs
2008-04-02 13:39 ` Joel J. Adamson
@ 2008-04-03 2:00 ` Kevin Rodgers
2008-04-03 5:22 ` Timothy Hobbs
2008-04-03 14:18 ` Joel J. Adamson
1 sibling, 2 replies; 33+ messages in thread
From: Kevin Rodgers @ 2008-04-03 2:00 UTC (permalink / raw)
To: help-gnu-emacs
Timothy "I am a top-poster" Hobbs wrote:
> No, I mean that I wish to have all files versioned, period. I don't care to
> have to remember to version them when I edit them. But I really can't think of
> a type of file that I edit that I don't want versioned. Even email drafts
> should have versioning in my opinion. Maybe I'll make some way to synchronise
> check ins with check offs in planner :D
(defadvice save-buffer (before version activate)
"I wish to have all files versioned, period."
(ad-set-arg 0 '(64)))
--
Kevin Rodgers
Denver, Colorado, USA
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Automatic versioning
2008-04-03 2:00 ` Kevin Rodgers
@ 2008-04-03 5:22 ` Timothy Hobbs
2008-04-04 12:24 ` Kevin Rodgers
2008-04-03 14:18 ` Joel J. Adamson
1 sibling, 1 reply; 33+ messages in thread
From: Timothy Hobbs @ 2008-04-03 5:22 UTC (permalink / raw)
To: EMACS list
Kevin Rodgers <kevin.d.rodgers@gmail.com> writes:
> (defadvice save-buffer (before version activate)
> "I wish to have all files versioned, period."
> (ad-set-arg 0 '(64)))
What exactly does this do?
Timothy
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Automatic versioning
2008-04-03 5:22 ` Timothy Hobbs
@ 2008-04-04 12:24 ` Kevin Rodgers
2008-04-04 13:44 ` Joel J. Adamson
2008-04-04 20:35 ` Timothy Hobbs
0 siblings, 2 replies; 33+ messages in thread
From: Kevin Rodgers @ 2008-04-04 12:24 UTC (permalink / raw)
To: help-gnu-emacs
Timothy Hobbs wrote:
> Kevin Rodgers <kevin.d.rodgers@gmail.com> writes:
>
>> (defadvice save-buffer (before version activate)
>> "I wish to have all files versioned, period."
>> (ad-set-arg 0 '(64)))
>
> What exactly does this do?
It makes save-buffer behave as if it were invoked as
`C-u C-u C-u C-x C-s' (see "Prefixed with three C-u's"
below).
,----[ C-h k C-x C-s ]
| C-x C-s runs the command save-buffer
| which is an interactive compiled Lisp function in `files.el'.
| It is bound to C-x C-s, <menu-bar> <file> <save-buffer>.
| (save-buffer &optional args)
|
| Save current buffer in visited file if modified.
| Variations are described below.
|
| By default, makes the previous version into a backup file
| if previously requested or if this is the first save.
| Prefixed with one C-u, marks this version
| to become a backup when the next save is done.
| Prefixed with two C-u's,
| unconditionally makes the previous version into a backup file.
| Prefixed with three C-u's, marks this version
| to become a backup when the next save is done,
| and unconditionally makes the previous version into a backup file.
|
| With a numeric argument of 0, never make the previous version
| into a backup file.
|
| If a file's name is FOO, the names of its numbered backup versions are
| FOO.~i~ for various integers i. A non-numbered backup file is called
FOO~.
| Numeric backups (rather than FOO~) will be made if value of
| `version-control' is not the atom `never' and either there are already
| numeric versions of the file being backed up, or `version-control' is
| non-nil.
| We don't want excessive versions piling up, so there are variables
| `kept-old-versions', which tells Emacs how many oldest versions to keep,
| and `kept-new-versions', which tells how many newest versions to keep.
| Defaults are 2 old versions and 2 new.
| `dired-kept-versions' controls dired's clean-directory (.) command.
| If `delete-old-versions' is nil, system will query user
| before trimming versions. Otherwise it does it silently.
|
| If `vc-make-backup-files' is nil, which is the default,
| no backup files are made for files managed by version control.
| (This is because the version control system itself records previous
versions.)
|
| See the subroutine `basic-save-buffer' for more information.
|
| [back]
`----
--
Kevin Rodgers
Denver, Colorado, USA
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Automatic versioning
2008-04-04 12:24 ` Kevin Rodgers
@ 2008-04-04 13:44 ` Joel J. Adamson
2008-04-04 20:35 ` Timothy Hobbs
1 sibling, 0 replies; 33+ messages in thread
From: Joel J. Adamson @ 2008-04-04 13:44 UTC (permalink / raw)
To: Kevin Rodgers; +Cc: help-gnu-emacs
Kevin Rodgers <kevin.d.rodgers@gmail.com> writes:
> Timothy Hobbs wrote:
>> Kevin Rodgers <kevin.d.rodgers@gmail.com> writes:
>>
>>> (defadvice save-buffer (before version activate)
>>> "I wish to have all files versioned, period."
>>> (ad-set-arg 0 '(64)))
>>
>> What exactly does this do?
>
> It makes save-buffer behave as if it were invoked as
> `C-u C-u C-u C-x C-s' (see "Prefixed with three C-u's"
> below).
Will this not just multiply the number of copies of the file? Is that
what OP wants?
Joel
--
Joel J. Adamson
Biostatistician
Pediatric Psychopharmacology Research Unit
Massachusetts General Hospital
Boston, MA 02114
(617) 643-1432
(303) 880-3109
Public key: http://pgp.mit.edu
The information transmitted in this electronic communication is intended only
for the person or entity to whom it is addressed and may contain confidential
and/or privileged material. Any review, retransmission, dissemination or other
use of or taking of any action in reliance upon this information by persons or
entities other than the intended recipient is prohibited. If you received this
information in error, please contact the Compliance HelpLine at 800-856-1983 and
properly dispose of this information.
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Automatic versioning
2008-04-04 12:24 ` Kevin Rodgers
2008-04-04 13:44 ` Joel J. Adamson
@ 2008-04-04 20:35 ` Timothy Hobbs
2008-04-05 0:00 ` Xavier Maillard
1 sibling, 1 reply; 33+ messages in thread
From: Timothy Hobbs @ 2008-04-04 20:35 UTC (permalink / raw)
To: EMACS list
Kevin Rodgers <kevin.d.rodgers@gmail.com> writes:
>>> (defadvice save-buffer (before version activate)
>>> "I wish to have all files versioned, period."
>>> (ad-set-arg 0 '(64)))
>>
>> What exactly does this do?
>
> It makes save-buffer behave as if it were invoked as
> `C-u C-u C-u C-x C-s' (see "Prefixed with three C-u's"
> below).
> | Prefixed with three C-u's, marks this version
> | to become a backup when the next save is done,
> | and unconditionally makes the previous version into a backup file.
That seems like a terribly inefficient way of doing things. Creating many many
multiple backup copies. Especially because I save quite regularly. I could
easily end up with hundreds or thousands of backup copies. Not what I want. It
seems that there should be a system almost exactly like mediawiki's in which
diffs are saved, and you can see a list of versions, compare them--even across
ranges, revert them, spin through different versions with a next/previous
button. ect.
Timothy
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Automatic versioning
2008-04-04 20:35 ` Timothy Hobbs
@ 2008-04-05 0:00 ` Xavier Maillard
2008-04-05 4:21 ` Timothy Hobbs
0 siblings, 1 reply; 33+ messages in thread
From: Xavier Maillard @ 2008-04-05 0:00 UTC (permalink / raw)
To: Timothy Hobbs; +Cc: help-gnu-emacs
Kevin Rodgers <kevin.d.rodgers@gmail.com> writes:
>>> (defadvice save-buffer (before version activate)
>>> "I wish to have all files versioned, period."
>>> (ad-set-arg 0 '(64)))
>>
>> What exactly does this do?
>
> It makes save-buffer behave as if it were invoked as
> `C-u C-u C-u C-x C-s' (see "Prefixed with three C-u's"
> below).
> | Prefixed with three C-u's, marks this version
> | to become a backup when the next save is done,
> | and unconditionally makes the previous version into a backup file.
That seems like a terribly inefficient way of doing things. Creating many many
multiple backup copies. Especially because I save quite regularly. I could
easily end up with hundreds or thousands of backup copies. Not what I want. It
seems that there should be a system almost exactly like mediawiki's in which
diffs are saved, and you can see a list of versions, compare them--even across
ranges, revert them, spin through different versions with a next/previous
button. ect.
Another solution would be to "embed" some sort of the mechanism
from a modern DVC like GNU Bazaar or Git. Given the fact that
they have been "libitized" (you can take advantage of them by
linking your program against them), this should be quite easy to
implement.
WDYT ?
Xavier
--
http://www.gnu.org
http://www.april.org
http://www.lolica.org
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Automatic versioning
2008-04-05 0:00 ` Xavier Maillard
@ 2008-04-05 4:21 ` Timothy Hobbs
0 siblings, 0 replies; 33+ messages in thread
From: Timothy Hobbs @ 2008-04-05 4:21 UTC (permalink / raw)
To: EMACS list
Xavier Maillard <xma@gnu.org> writes:
>
> Another solution would be to "embed" some sort of the mechanism
> from a modern DVC like GNU Bazaar or Git. Given the fact that
> they have been "libitized" (you can take advantage of them by
> linking your program against them), this should be quite easy to
> implement.
I am a bit cautious of any system with a hierarchical 'bottom' to it. Git,
Bazaar, CVS, SVN all have these nasty things called repositories which have to
be kept track of. Do you make / the repository? Clearly not, you would then
have to give user write perms to it. Do you make ~/ the repository? Clearly
not,then etc files wouldn't be versioned in the same system. I think RCS is
much better from this standpoint, but I'm not sure exactly how to implement
things with RCS.
VC would be great if instead of having that funky C-x v v ring for locking, and
checking in files, files where locked with an after find-file hook, and checked
in with a pre-save hook, given that there was some way to pragmatically skip
the comments prompt(which I always leave blank anyways).
Then there would be two more functions to write.
vc-prev bound to something very convenient like C-<left>
and
vc-next C-<right>
vc-prev would call a cleaned up version of vc-version-other-window which didn't
create the temp files, and of course went to the previous version, instead of
prompting. vc-prev/next could be even better if they split the frame into 3
windows vertically:
1) Showing the diff between the selected(as it the one cycled to with
vc-next/prev) version and the one before it.
2) Showing the selected version.
3) Showing the diff between the selected version and the latest one.
This would make the whole thing slightly better than media-wiki, because that
3rd diff<the on showing changes in the latest> would be quite use full.
I tried to implement this today, but I ran into significant hurdles.
1) vc's C-x v v is quite a complex bit of functionality, and I wasn't able to
figure out what the basic back-end functions for locking and checking in where.
There is vc-rcs-checkout and vc-rcs-checkin but I wasn't able to figure out how
to use these in the find-file hook and the save buffer defadvice.
2) vc-version-other-window creates those nasty little .~version-number~ temp
files and doesn't clean up after itself.
3) I couldn't figure out how to get the version before "version" or the version
after "version".
So basically all of my prospecting of the vc api failed.
I hope there is someone out there who is more competent with vc than I who is
willing to give me guidance. I plan to publish this work, so one special
consideration is that I don't walk over those who use vc for svn/cvs ect. I
think that once this is made everyone will realise that seamless versioning in
all files(like a very long term, visual undo)(as well as a method of seeing how
your work progressed/evolved) is not just the way to go, but something that in a
few months people will wonder how they lived without.
Wish me luck, and give me help! Please.
Timothy Hobbs
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Automatic versioning
2008-04-03 2:00 ` Kevin Rodgers
2008-04-03 5:22 ` Timothy Hobbs
@ 2008-04-03 14:18 ` Joel J. Adamson
2008-04-04 12:28 ` Kevin Rodgers
1 sibling, 1 reply; 33+ messages in thread
From: Joel J. Adamson @ 2008-04-03 14:18 UTC (permalink / raw)
To: Kevin Rodgers; +Cc: help-gnu-emacs
Kevin Rodgers <kevin.d.rodgers@gmail.com> writes:
> Timothy "I am a top-poster" Hobbs wrote:
>> No, I mean that I wish to have all files versioned, period. I don't care to
>> have to remember to version them when I edit them. But I really can't think of
>> a type of file that I edit that I don't want versioned. Even email drafts
>> should have versioning in my opinion. Maybe I'll make some way to synchronise
>> check ins with check offs in planner :D
>
> (defadvice save-buffer (before version activate)
> "I wish to have all files versioned, period."
> (ad-set-arg 0 '(64)))
Perhaps you want a save-buffer-hook also.
Joel
--
Joel J. Adamson
Biostatistician
Pediatric Psychopharmacology Research Unit
Massachusetts General Hospital
Boston, MA 02114
(617) 643-1432
(303) 880-3109
Public key: http://pgp.mit.edu
The information transmitted in this electronic communication is intended only
for the person or entity to whom it is addressed and may contain confidential
and/or privileged material. Any review, retransmission, dissemination or other
use of or taking of any action in reliance upon this information by persons or
entities other than the intended recipient is prohibited. If you received this
information in error, please contact the Compliance HelpLine at 800-856-1983 and
properly dispose of this information.
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Automatic versioning
2008-04-03 14:18 ` Joel J. Adamson
@ 2008-04-04 12:28 ` Kevin Rodgers
0 siblings, 0 replies; 33+ messages in thread
From: Kevin Rodgers @ 2008-04-04 12:28 UTC (permalink / raw)
To: help-gnu-emacs
Joel J. Adamson wrote:
> Kevin Rodgers <kevin.d.rodgers@gmail.com> writes:
>
>> Timothy "I am a top-poster" Hobbs wrote:
>>> No, I mean that I wish to have all files versioned, period. I don't care to
>>> have to remember to version them when I edit them. But I really can't think of
>>> a type of file that I edit that I don't want versioned. Even email drafts
>>> should have versioning in my opinion. Maybe I'll make some way to synchronise
>>> check ins with check offs in planner :D
>> (defadvice save-buffer (before version activate)
>> "I wish to have all files versioned, period."
>> (ad-set-arg 0 '(64)))
>
> Perhaps you want a save-buffer-hook also.
There is before-save-hook and after-save-hook, but I don't know what you
could do there to get the requested behavior -- set version-control,
kept-old-versions, kept-new-versions, etc?
--
Kevin Rodgers
Denver, Colorado, USA
^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: Choosing a versioning system
2008-03-30 17:21 ` Choosing a versioning system (was My dream work log:) rustom
` (4 preceding siblings ...)
2008-03-31 8:22 ` Tim X
@ 2008-03-31 19:04 ` Joel J. Adamson
5 siblings, 0 replies; 33+ messages in thread
From: Joel J. Adamson @ 2008-03-31 19:04 UTC (permalink / raw)
To: rustom; +Cc: help-gnu-emacs
rustom <rustompmody@gmail.com> writes:
> On Mar 29, 10:18 pm, Mike Treseler <mike_trese...@comcast.net> wrote:
>> B. T. Raven wrote:
>> > Check out Menu>Tools>Version Control
>>
>> See also:
>>
>> Menu>Tools>Compare
>>
>> -- Mike Treseler
>
> Out of curiosity I did this and found that the default version control
> system that gets invoked is rcs.
> I wonder if this (default) is the best advice to a noob??
> My impression is that rcs was superseded by cvs by svn by.. well... a
> lot of competition!
I used RCS for a while until I understood the concepts, so I recommend
it. I use SVN now, but that's for my projects, my single-file projects
(e.g. awk/sh scripts and some elisp) is still in RCS. SVN can be
overkill for single files. Besides, it still works ;)
Joel
--
Joel J. Adamson
Biostatistician
Pediatric Psychopharmacology Research Unit
Massachusetts General Hospital
Boston, MA 02114
(617) 643-1432
(303) 880-3109
Public key: http://pgp.mit.edu
The information transmitted in this electronic communication is intended only
for the person or entity to whom it is addressed and may contain confidential
and/or privileged material. Any review, retransmission, dissemination or other
use of or taking of any action in reliance upon this information by persons or
entities other than the intended recipient is prohibited. If you received this
information in error, please contact the Compliance HelpLine at 800-856-1983 and
properly dispose of this information.
^ permalink raw reply [flat|nested] 33+ messages in thread