All of lore.kernel.org
 help / color / mirror / Atom feed
* Announcing git-cinnabar 0.3.0
@ 2016-01-15  8:56 Mike Hommey
  2016-01-15  9:25 ` Johannes Schindelin
  2016-01-16 11:27 ` Announcing git-cinnabar 0.3.1 Mike Hommey
  0 siblings, 2 replies; 6+ messages in thread
From: Mike Hommey @ 2016-01-15  8:56 UTC (permalink / raw)
  To: git

Git-cinnabar is a git remote helper to interact with mercurial
repositories. It allows to clone, pull and push from/to mercurial remote
repositories, using git.

Code on https://github.com/glandium/git-cinnabar

[ Previous announcements:
  http://marc.info/?l=git&m=142837367709781
  http://marc.info/?l=git&m=142364715001983
  http://marc.info/?l=git&m=141781485726430 ]

Development had been stalled for a few months, with many improvements in
the `next` branch without any new release. I used some time during the
new year break and after in order to straighten things up in order to
create a new release, delaying many of the originally planned changes to
a future 0.4.0 release.

What's new since 0.2.2?

- Speed and memory usage were improved when doing `git push`.
- Now works on Windows, at least to some extent. See details[1].
- Support for pre-0.1.0 git-cinnabar repositories was removed. You must
  first use a git-cinnabar version between 0.1.0 and 0.2.2 to upgrade
  its metadata.
- It is now possible to attach/graft git-cinnabar metadata to existing
  commits matching mercurial changesets. This allows to migrate from
  some other hg-to-git tool to git-cinnabar while preserving the
  existing git commits.  See an example of how this works with the git
  clone of the Gecko mercurial repository[2]
- Avoid mercurial printing its progress bar, messing up with
  git-cinnabar's output.
- It is now possible to fetch from an incremental mercurial bundle
  (without a root changeset).
- It is now possible to push to a new mercurial repository without `-f`.
- By default, reject pushing a new root to a mercurial repository.
- Make the connection to a mercurial repository through ssh respect the
  `GIT_SSH` and `GIT_SSH_COMMAND` environment variables.
- `git cinnabar` now has a proper argument parser for all its
  subcommands.
- A new `git cinnabar python` command allows to run python scripts or
  open a python shell with the right sys.path to import the cinnabar
  module.
- All git-cinnabar metadata is now kept under a single ref (although for
  convenience, other refs are created, but they can be derived if
  necessary).
- Consequently, a new `git cinnabar rollback` command allows to roll
  back to previous metadata states.
- git-cinnabar metadata now tracks the manifests DAG.
- A new `git cinnabar bundle` command allows to create mercurial
  bundles, mostly for debugging purposes, without requiring to hit a
  mercurial server.
- Updated git to 2.7.0 for the native helper.

Development process changes

Up to before this release closing in, the `master` branch was dedicated
to releases, and development was happening on the `next` branch, until a
new release happens.

>From now on, the `release` branch will take dot-release fixes and new
releases, while the `master` branch will receive all changes that are
validated through testing (currently semi-automatically tested with
out-of-tree tests based on four real-life mercurial repositories, with
some automated CI based on in-tree tests used in the future).

The `next` branch will receive changes to be tested in CI when things
will be hooked up, and may have rewritten history as a consequence of
wanting passing tests on every commit on `master`.

Mike

1. https://github.com/glandium/git-cinnabar/wiki/Windows-Support
2. https://github.com/glandium/git-cinnabar/wiki/Mozilla:-Using-a-git-clone-of-gecko%E2%80%90dev-to-push-to-mercurial

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Announcing git-cinnabar 0.3.0
  2016-01-15  8:56 Announcing git-cinnabar 0.3.0 Mike Hommey
@ 2016-01-15  9:25 ` Johannes Schindelin
  2016-01-15  9:40   ` Mike Hommey
  2016-02-14 21:57   ` Max Horn
  2016-01-16 11:27 ` Announcing git-cinnabar 0.3.1 Mike Hommey
  1 sibling, 2 replies; 6+ messages in thread
From: Johannes Schindelin @ 2016-01-15  9:25 UTC (permalink / raw)
  To: Mike Hommey; +Cc: git

Hi Mike,

On Fri, 15 Jan 2016, Mike Hommey wrote:

> Git-cinnabar is a git remote helper to interact with mercurial
> repositories. It allows to clone, pull and push from/to mercurial remote
> repositories, using git.

Great news! I was really sad when Sverre's work on remote-hg was basically
ignored and replaced (and he went away after that), and then the
replacement was not maintained properly.

So I am personally very happy that there is a well-maintained alternative
now.

Hopefully I will get a chance to test this soon, but I already have one
comment: at
> 1. https://github.com/glandium/git-cinnabar/wiki/Windows-Support

... it is mentioned that...

	Git for Windows 32-bits is untested, but assumed to have the same
	issue as MSys2 32-bits

... but as is mentioned here:

	https://github.com/git-for-windows/git/wiki/32-bit-issues

Git for Windows executes the rebaseall step as part of the installation,
so it should not have the same issue as MSys2 32-bits ;-)

Ciao,
Dscho

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Announcing git-cinnabar 0.3.0
  2016-01-15  9:25 ` Johannes Schindelin
@ 2016-01-15  9:40   ` Mike Hommey
  2016-01-15 10:15     ` Johannes Schindelin
  2016-02-14 21:57   ` Max Horn
  1 sibling, 1 reply; 6+ messages in thread
From: Mike Hommey @ 2016-01-15  9:40 UTC (permalink / raw)
  To: Johannes Schindelin; +Cc: git

On Fri, Jan 15, 2016 at 10:25:14AM +0100, Johannes Schindelin wrote:
> Hi Mike,
> 
> On Fri, 15 Jan 2016, Mike Hommey wrote:
> 
> > Git-cinnabar is a git remote helper to interact with mercurial
> > repositories. It allows to clone, pull and push from/to mercurial remote
> > repositories, using git.
> 
> Great news! I was really sad when Sverre's work on remote-hg was basically
> ignored and replaced (and he went away after that), and then the
> replacement was not maintained properly.
> 
> So I am personally very happy that there is a well-maintained alternative
> now.
> 
> Hopefully I will get a chance to test this soon, but I already have one
> comment: at
> > 1. https://github.com/glandium/git-cinnabar/wiki/Windows-Support
> 
> ... it is mentioned that...
> 
> 	Git for Windows 32-bits is untested, but assumed to have the same
> 	issue as MSys2 32-bits
> 
> ... but as is mentioned here:
> 
> 	https://github.com/git-for-windows/git/wiki/32-bit-issues
> 
> Git for Windows executes the rebaseall step as part of the installation,
> so it should not have the same issue as MSys2 32-bits ;-)

Please feel free to update the wiki page, it should be publicly editable
:)

Mike

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Announcing git-cinnabar 0.3.0
  2016-01-15  9:40   ` Mike Hommey
@ 2016-01-15 10:15     ` Johannes Schindelin
  0 siblings, 0 replies; 6+ messages in thread
From: Johannes Schindelin @ 2016-01-15 10:15 UTC (permalink / raw)
  To: Mike Hommey; +Cc: git

Hi Mike,

On Fri, 15 Jan 2016, Mike Hommey wrote:

> On Fri, Jan 15, 2016 at 10:25:14AM +0100, Johannes Schindelin wrote:
> 
> > Git for Windows executes the rebaseall step as part of the
> > installation, so it should not have the same issue as MSys2 32-bits
> > ;-)
> 
> Please feel free to update the wiki page, it should be publicly editable
> :)

Done!
Dscho

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Announcing git-cinnabar 0.3.1
  2016-01-15  8:56 Announcing git-cinnabar 0.3.0 Mike Hommey
  2016-01-15  9:25 ` Johannes Schindelin
@ 2016-01-16 11:27 ` Mike Hommey
  1 sibling, 0 replies; 6+ messages in thread
From: Mike Hommey @ 2016-01-16 11:27 UTC (permalink / raw)
  To: git

This is a brown paper bag release. It turns out I managed to break the
upgrade path only 10 commits before the release.

What's new since 0.3.0?

- `git cinnabar fsck` doesn't fail to upgrade metadata.
- The remote.$remote.cinnabar-draft config works again.
- Don't fail to clone an empty repository.
- Allow to specify mercurial configuration items in a .git/hgrc file.

Mike

On Fri, Jan 15, 2016 at 05:56:58PM +0900, Mike Hommey wrote:
> Git-cinnabar is a git remote helper to interact with mercurial
> repositories. It allows to clone, pull and push from/to mercurial remote
> repositories, using git.
> 
> Code on https://github.com/glandium/git-cinnabar
> 
> [ Previous announcements:
>   http://marc.info/?l=git&m=142837367709781
>   http://marc.info/?l=git&m=142364715001983
>   http://marc.info/?l=git&m=141781485726430 ]
> 
> Development had been stalled for a few months, with many improvements in
> the `next` branch without any new release. I used some time during the
> new year break and after in order to straighten things up in order to
> create a new release, delaying many of the originally planned changes to
> a future 0.4.0 release.
> 
> What's new since 0.2.2?
> 
> - Speed and memory usage were improved when doing `git push`.
> - Now works on Windows, at least to some extent. See details[1].
> - Support for pre-0.1.0 git-cinnabar repositories was removed. You must
>   first use a git-cinnabar version between 0.1.0 and 0.2.2 to upgrade
>   its metadata.
> - It is now possible to attach/graft git-cinnabar metadata to existing
>   commits matching mercurial changesets. This allows to migrate from
>   some other hg-to-git tool to git-cinnabar while preserving the
>   existing git commits.  See an example of how this works with the git
>   clone of the Gecko mercurial repository[2]
> - Avoid mercurial printing its progress bar, messing up with
>   git-cinnabar's output.
> - It is now possible to fetch from an incremental mercurial bundle
>   (without a root changeset).
> - It is now possible to push to a new mercurial repository without `-f`.
> - By default, reject pushing a new root to a mercurial repository.
> - Make the connection to a mercurial repository through ssh respect the
>   `GIT_SSH` and `GIT_SSH_COMMAND` environment variables.
> - `git cinnabar` now has a proper argument parser for all its
>   subcommands.
> - A new `git cinnabar python` command allows to run python scripts or
>   open a python shell with the right sys.path to import the cinnabar
>   module.
> - All git-cinnabar metadata is now kept under a single ref (although for
>   convenience, other refs are created, but they can be derived if
>   necessary).
> - Consequently, a new `git cinnabar rollback` command allows to roll
>   back to previous metadata states.
> - git-cinnabar metadata now tracks the manifests DAG.
> - A new `git cinnabar bundle` command allows to create mercurial
>   bundles, mostly for debugging purposes, without requiring to hit a
>   mercurial server.
> - Updated git to 2.7.0 for the native helper.
> 
> Development process changes
> 
> Up to before this release closing in, the `master` branch was dedicated
> to releases, and development was happening on the `next` branch, until a
> new release happens.
> 
> From now on, the `release` branch will take dot-release fixes and new
> releases, while the `master` branch will receive all changes that are
> validated through testing (currently semi-automatically tested with
> out-of-tree tests based on four real-life mercurial repositories, with
> some automated CI based on in-tree tests used in the future).
> 
> The `next` branch will receive changes to be tested in CI when things
> will be hooked up, and may have rewritten history as a consequence of
> wanting passing tests on every commit on `master`.
> 
> Mike
> 
> 1. https://github.com/glandium/git-cinnabar/wiki/Windows-Support
> 2. https://github.com/glandium/git-cinnabar/wiki/Mozilla:-Using-a-git-clone-of-gecko%E2%80%90dev-to-push-to-mercurial
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Announcing git-cinnabar 0.3.0
  2016-01-15  9:25 ` Johannes Schindelin
  2016-01-15  9:40   ` Mike Hommey
@ 2016-02-14 21:57   ` Max Horn
  1 sibling, 0 replies; 6+ messages in thread
From: Max Horn @ 2016-02-14 21:57 UTC (permalink / raw)
  To: Johannes Schindelin; +Cc: Mike Hommey, git

Hi there,

> On 15 Jan 2016, at 10:25, Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:
> 
> Hi Mike,
> 
> On Fri, 15 Jan 2016, Mike Hommey wrote:
> 
>> Git-cinnabar is a git remote helper to interact with mercurial
>> repositories. It allows to clone, pull and push from/to mercurial remote
>> repositories, using git.
> 
> Great news! I was really sad when Sverre's work on remote-hg was basically
> ignored and replaced (and he went away after that),

I have a bit of a different recollection of that story; in particular, his tool was quite limited, and quickly broke down when used. 

> and then the replacement was not maintained properly.

If you are talking about felipe's git-remote-hg: I am maintaining a fork of that, and it works quite well for me (I use it daily, and so do many other people):

<https://github.com/fingolfin/git-remote-hg>

That said, I certainly am not putting much energy into it, so I am very happy to see that Mike is active on his new tool :-).

Cheers,
Max

> 
> So I am personally very happy that there is a well-maintained alternative
> now.
> 
> Hopefully I will get a chance to test this soon, but I already have one
> comment: at
>> 1. https://github.com/glandium/git-cinnabar/wiki/Windows-Support
> 
> ... it is mentioned that...
> 
> 	Git for Windows 32-bits is untested, but assumed to have the same
> 	issue as MSys2 32-bits
> 
> ... but as is mentioned here:
> 
> 	https://github.com/git-for-windows/git/wiki/32-bit-issues
> 
> Git for Windows executes the rebaseall step as part of the installation,
> so it should not have the same issue as MSys2 32-bits ;-)
> 
> Ciao,
> Dscho
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-02-14 22:15 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-15  8:56 Announcing git-cinnabar 0.3.0 Mike Hommey
2016-01-15  9:25 ` Johannes Schindelin
2016-01-15  9:40   ` Mike Hommey
2016-01-15 10:15     ` Johannes Schindelin
2016-02-14 21:57   ` Max Horn
2016-01-16 11:27 ` Announcing git-cinnabar 0.3.1 Mike Hommey

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.