An introduction to git-svn for Subversion/SVK users and deser...
Popularity Report
![]() |
|||
![]() |
|||
![]() |
|||
![]() |
|||
![]() |
|||
![]() |
URL Tag Cloud
- git
- , svn
- , subversion
- , development
- , vcs
- , tools
- , scm
- , control
- , svk
- , comparison
- , article
- , introduction
- , versioning
- , torvalds
- , git-svn
- , versioncontrol
- , opensource
- , mercurial
- , bazaar
- , dvcs
Groups (3)
Bookmark History
Saved by 15 people (4 private), first by anonymouse user on 2007-08-19
- Danieljomphe on 2008-09-30 - Tags dvcs , vcs , git , comparison , svn , mercurial , bazaar
- Tabrez on 2008-09-30 - Tags git
- Niccad on 2008-08-14 - Tags git , subversion , tutorial
- Mangifera on 2008-06-30 - Tags git , tutorials
- Pistos on 2008-05-17 - Tags git , svn , subversion , scm , vcs , source , control , manager , comparison , intro , introduction , filesystem , linus , torvalds
Public Sticky notes
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Writing a tool to do something that you want is often quite a simple matter of plugging together a few core commands.
It's simple enough that once a few basic concepts are there, you begin to feel comfortable knowing that the repository just can't wedge, changes can be discarded yet not lost unless you request them to be cleaned up, etc.
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Disk might be cheap, but my /home is always full - git has a separate step for compacting repositories, which means that delta compression can be far more effective. If you're a compression buff, think of it as having an arbitrarily sized window, because when delta compressing git is able to match strings anywhere else in the repository - not just the file which is the notional ancestor of the new revision.
This space efficiency affects everything - the virtual memory footprint in your buffercache while mining information from the repository, how much data needs to be transferred during "push" and "pull" operations, and so on. Compare that to Subversion, which even when merging between branches is incapable of using the same space for the changes hitting the target branch. The results speak for themselves - I have observed an average of 10 to 1 space savings going from Subversion FSFS to git.
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Ok, so you've already gone and made the commits locally that you wanted to publish back to the Subversion server. Perhaps you've even made a collection of changes, revising each change to be clearly understandable, making a single small change well such that the entire series of changes can be easily reviewed by your fellow project contributors. It is now time to publish your changes back to Subversion.
The command to use is git svn dcommit. The d stands for delta
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe
Highlighted by danieljomphe


Public Comment