OnWorks favicon

git-debimport - Online in the Cloud

Run git-debimport in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command git-debimport that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



git-debimport - create a git repository from a set of existing Debian packages


git-debimport [options] path-prefix


This program will create a git repository of all files that match ${path-prefix}_*.diff.gz
or ${path-prefix}_*.debian.tar.{gz,bz2,xz} (with their corresponding
orig.tar.{gz,bz2,xz}), or of all files that match ${path-prefix}_*.tar.{gz,bz2,xz} (for
Debian native packages).


The following options are available:

Attempt to download all available versions from snapshot.debian.org rather than use
an existing set of packages. The debsnap(1) utility, from devscripts 2.10.63 or
later, must be available in the path to use this option (earlier debsnap versions
only supported snapshot.debian.net which is no longer a functional mirror). The
packages will be downloaded into the location implied by the path-prefix where they
would normally be expected to exist already without this option. Downloaded
packages will not automatically be removed after this operation is complete.

Early versions of git-debimport would only merge the upstream and debian branches
after the import of all packages was complete. This avoids an import failing where
the merge might have conflicts that would need to be manually resolved. We know
the import of the next package in the series will contain a resolution to any such
conflict, so delaying the merge allows the import to proceed without intervention
or introducing changes that were not part of the original history. It does however
produce a lesser quality history for the purposes of browsing the Debian changes.
All the original packages may be retrieved from such a repo with perfect fidelity,
but the diff between adjacent Debian versions will be mingled with upstream changes

The default for current versions of git-debimport is to merge each new upstream
release as it is imported. This gives a much more natural and useful looking
history, but may fail in some cases. Use this option to employ the older more
reliable method for packages that generate conflicts during import.

-v, --verbose
Be more noisy about reporting operations in progress. Mostly only useful with the
--fetch option at present.


Import an archive of existing 'mypackagename' packages from mysrcdir:
$ mkdir mydestdir && cd mydestdir
$ git-debimport ../mysrcdir/mypackagename

Import all available versions of gitpkg from snapshot.debian.org:
$ mkdir mydestdir && cd mydestdir
$ git-debimport --fetch ../my-gitpkg-sources/gitpkg


It is unfortunate that at the present time, many of the tools for importing source to git
from an existing revision control system all leave something to be desired. This script
does not solve that problem. What it does do however is create a repository that makes it
possible to accurately extract all of the earlier packages which were injected to it.
This is sadly more than can be said for the result of running git-cvsimport on a repo
created by cvs-buildpackage, for example.

It is currently very simple, and makes a number of hard-coded assumptions about the
resulting repo. For debian-versioned packages it will create a repo with two branches:

upstream - for the pristine upstream source
master - for the Debianised source

Native versioned packages will have only the master branch.

While the loss of fine grained history on individual commits is most regrettable, this
script enables a maintainer to import a usable record of the previously released packages
as a base for future development. This may be an acceptable trade-off for people who feel
the advantage of moving future development to git now outweighs the inconvenience of
needing to refer to a legacy repository for full details of previous commits.

Hopefully the problems of accurately importing from other revision control systems will be
solved one day, but in the meantime, a brief but accurate history seems more useful than a
detailed but largely bogus one.

With the addition of the debsnap(1) tool, the useful life of this has been extended beyond
the originally envisaged need. People who do not have access to the original revision
control history at all can build for themselves a useful base for further development,
quickly and easily, from the packages that are still available on public snapshot mirrors.

Use git-debimport online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    A set of Python extension modules that
    wrap the cross-platform GUI classes from
    wxWidgets.. Audience: Developers. User
    interface: X Window System (X11), Win32 ...
    Download wxPython
  • 2
    This is the Total War pack file manager
    project, starting from version 1.7. A
    short introduction into Warscape
    modding: ...
    Download packfilemanager
  • 3
    A network traffic tool for measuring
    TCP and UDP performance with metrics
    around both throughput and latency. The
    goals include maintaining an active
    iperf cod...
    Download IPerf2
  • 4
    fre:ac - free audio converter
    fre:ac - free audio converter
    fre:ac is a free audio converter and CD
    ripper for various formats and encoders.
    It features MP3, MP4/M4A, WMA, Ogg
    Vorbis, FLAC, AAC, and Bonk format
    support, ...
    Download fre:ac - free audio converter
  • 5
    Write your chatbot logic once and
    connect it to one of the available
    messaging services, including Amazon
    Alexa, Facebook Messenger, Slack,
    Telegram or even yo...
    Download BotMan
  • 6
    gerbv  a Gerber (RS-274X) viewer
    gerbv a Gerber (RS-274X) viewer
    Gerbv is an open source Gerber file
    (RS-274X only) viewer. Gerbv lets you
    load several files on top of each other,
    do measurements on the displayed image,
    etc. ...
    Download gerbv a Gerber (RS-274X) viewer
  • 7
    I/O performance Analysis Tool.
    Audience: Developers, Information
    Technology, Science/Research, System
    Administrators. User interface: Win32
    (MS Windows). Progr...
    Download Iometer
  • More »

Linux commands