github
Advanced Search
  • Home
  • Pricing and Signup
  • Explore GitHub
  • Blog
  • Login

purcell / darcs-to-git

  • Admin
  • Watch Unwatch
  • Fork
  • Your Fork
  • Pull Request
  • Download Source
    • 20
    • 3
  • Source
  • Commits
  • Network (3)
  • Issues (0)
  • Downloads (0)
  • Wiki (1)
  • Graphs
  • Branch: master

click here to add a description

click here to add a homepage

  • Branches (2)
    • master ✓
    • next
  • Tags (0)
Sending Request…
Click here to lend your support to: darcs-to-git and make a donation at www.pledgie.com ! Edit Pledgie Setup

Pledgie Donations

Once activated, we'll place the following badge in your repository's detail box:
Pledgie_example
This service is courtesy of Pledgie.

Make git mirrors of darcs repositories — Read more

  cancel

http://www.sanityinc.com/articles/converting-darcs-repositories-to-git

  cancel
  • Private
  • Read-Only
  • HTTP Read-Only

This URL has Read+Write access

Fixed missing backquote in README 
Jonathon Mah (author)
Sun Aug 30 19:22:11 -0700 2009
commit  7040a12eb292f65f49e991d6a84604400ed4e85c
tree    310109cef853a5e5a3358c658ae907aa171f9a09
parent  9b2034d91dea9303454cd0d8638906aa1433545a
darcs-to-git /
name age
history
message
file LICENSE Fri Jan 02 08:55:18 -0800 2009 Add an MIT license [Steve Purcell]
file README.markdown Sun Aug 30 19:22:11 -0700 2009 Fixed missing backquote in README [Jonathon Mah]
file darcs-to-git Sat Aug 29 06:30:18 -0700 2009 Add borings to the global darcs boring file I ... [Jonathon Mah]
README.markdown

darcs-to-git

written by Steve Purcell, some improvements by Thomas Schilling,
Jonathon Mah

Converts a Darcs repository into a Git repository. Supports incremental updates, i.e., you can pull new patches from the source repository or import a large repository in steps.

USAGE

(Use darcs-to-git --help to display the latest usage instructions.)

  1. Create an empty directory that will become the new git repository
  2. From inside that directory, run this program, passing the location of the local source darcs repo as a parameter

The program will git-init the empty directory, and migrate all patches in the source darcs repo into commits in that repository.

Thereafter, incremental patch conversion from the same source repo is possible by repeating step 2.

Options

  • --patches N: only import N patches.

  • --email-address ADDRESS: darcs-to-git tries to reconstruct the email address from the darcs patch. In cases this is not possible, a default will be picked by Git. This is usually the one in ~/.gitconfig. This option allows you to specify another default (without having to to modify ~/.gitconfig.)

  • --list-authors: Outputs a list of authors in the source repository and how they will appear in the git repository and quits. The output will be lines like this:

    Jane@example.com: Jane Jane@example.com

This means that the darcs author "Jane@example.com" will be translated to git-author "Jane" with email address "Jane@example.com". You can use the output of this command as a starting point for the input for --author-map.

  • --author-map FILENAME: Allows translations from darcs committer name to Git committer name. The input is a YAML map. For an example see the output of --author-map. The author map will be stored in the repository and will be re-used for future imports.

KNOWN ISSUES

When darcs-to-git pulls a conflicting patch it will revert the state of the repository to the state before the conflict. THIS WILL ALSO REMOVE ANY LOCAL CHANGES TO YOUR REPOSITORY, INCLUDING GIT COMMITS! You should therefore not commit to the branch you import to, but instead work in a different branch. You can rename your master branch after import using:

$ git branch -m darcs_import
Blog | Support | Training | Contact | API | Status | Twitter | Help | Security
© 2010 GitHub Inc. All rights reserved. | Terms of Service | Privacy Policy
Powered by the Dedicated Servers and
Cloud Computing of Rackspace Hosting®
Dedicated Server