Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.882.200 Times

git-svn-helpers 0.4

Company: Tom Lazar
Date Added: October 02, 2013  |  Visits: 192

git-svn-helpers

Report Broken Link
Printer Friendly Version


Product Homepage
Download (16 downloads)



git-svn-helpers is a collection of command line tools that greatly simplifies using git for svn repositories.<br /><br />git-svn-helpers's main goal is to make setting up a local git repository following an existing svn checkout a 'no-brainer'.<br /><br />It also addresses using a single git-svn repository for working on multiple checkouts of (usually) different branches and switching between them.<br /><br />Basic usage (Example)<br /><br />Executive summary:<br /><br />> cd path/to/svn/repo<br />> gitify<br /><br />Here's a sample session:<br /><br />> cd /tmp<br />> svn co https://svn.plone.org/svn/plone/plone.app.form/branches/1.1 plone.app.form<br />A 1.1/setup.py<br />...<br />Checked out revision 27228.<br />> cd plone.app.form<br />> gitify<br />No git repository found in /Users/tomster/.gitcache/.<br />Initiating cloning into cache.<br />Analyzing svn log...<br />Cloning https://svn.plone.org/svn/plone/plone.app.form/ from r10593:27155 into /Users/tomster/.gitcache/<br />Initialized empty Git repository in /Users/tomster/.gitcache/plone.app.form/.git/<br />...<br />Git branch 'local/1.1' is now following svn branch '1.1':<br /># On branch local/1.1<br />nothing to commit (working directory clean)<br />> git branch<br />* local/1.1<br /> master<br /><br />Points to note:<br /><br /> * gitify limited the cloning to the revisions found in the svn log of the package root (here https://svn.plone.org/svn/plone/plone.app.form/). A big time saver, especially on large repositories (such as plone.collective)<br /> * gitify created the git repository at ~/.gitcache not in place<br /> * gitify created a local branch local/1.1 that follows the (remote) svn branch 1.1 and switched to it<br /><br />Multiple check-outs<br /><br />In practice you will often work with different local copies of a given repository, i.e. on trunk and on a feature branch. That's when the .gitcache directory created above comes in handy. Let's move our previous checkout out of the way and create a maintenance checkout that follows trunk:<br /><br />> cd ..<br />> mkdir feature-branch<br />> mv plone.app.form feature-branch/<br />> mkdir maintenance<br />> cd maintenance/<br />> svn co https://svn.plone.org/svn/plone/plone.app.form/trunk plone.app.form<br />A plone.app.form/setup.py<br />...<br /> U plone.app.form<br />Checked out revision 27228.<br /><br />What happens if we run gitify here?:<br /><br />> cd plone.app.form/<br />> gitify<br />Git branch 'local/trunk' is now following svn branch 'trunk':<br /># On branch local/trunk<br />nothing to commit (working directory clean)<br /><br />Notice, that this operation went much faster, as we now have used the existing git repository in the cache directory. This can be further evidenced by looking at the available local branches now:<br /><br />> git branch<br /> local/1.1<br />* local/trunk<br /> master<br /><br />Caveats<br /><br />'Recycling' .git in this manner works (perhaps surprisingly) well in practice, but you need to keep the following in mind:<br /><br />All checkouts share the same index!<br /><br />Let's take a look at what this means by switching back to our feature branch:<br /><br />> cd ../../feature-branch/plone.app.form/<br />> git status<br /># On branch local/trunk<br /># Changed but not updated:<br /># (use "git add/rm ..." to update what will be committed)<br /># (use "git checkout -- ..." to discard changes in working directory)<br />#<br /># modified: docs/HISTORY.txt<br />...<br /># deleted: plone/app/form/kss/tests/test_kss.py<br />...<br />#<br /># Untracked files:<br /># (use "git add ..." to include in what will be committed)<br />#<br /># plone/app/form/tests/test_kss.py<br /><br />Wohah! What happened is that .git now points to trunk and thus the status command shows the difference between that and our branch as local modifications, since that is what the filesystem represents. We can verify this by using subversions status command:<br /><br />> svn st<br />< BLANKLINE ><br /><br />Phew! All in order! But what to do with git? We've finished working on trunk and want to get back to our feature branch, but the git index is all wrong?! Simple: just re-run gitify:<br /><br />> gitify<br />Git branch 'local/1.1' is now following svn branch '1.1':<br /># On branch local/1.1<br />nothing to commit (working directory clean)<br /><br />Basically, that's all you need to remember when working with multiple check-outs of the same package: Always run gitify when switching between check-outs!<br /><br />md5=c05e864bb2ab6b7f3e63cccc9254787a

Requirements: No special requirements
Platforms: *nix, Linux
Keyword: Branch Checkout Checkouts Commit Created Directory Feature Git Svn Helpers 0 4 Gitify Local Quotgit Repository Status Switching Trunk Working
Users rating: 0/10

License: Freeware Size: 51.2 KB
USER REVIEWS
More Reviews or Write Review


GIT-SVN-HELPERS RELATED
Utilities  -  Print Directory Feature 1.0
The Print Directory Feature adds or removes the Print Directory feature for folders in Windows XP and in Windows Vista based on Microsoft's article number 321379.
204 KB  
Programming  -  gitctl 2.0.a7
A particular Git workflow implementation with a development/staging/production code-flow model and support for multiple repositories as part of a larger project gitctl's purpose is to implement a particular workflow for using Git to...
20.48 KB  
Libraries  -  SVN::Log::Index 0.51
SVN::Log::Index is a Perl module that can index and search over Subversion commit logs. SYNOPSIS my $index = SVN::Log::Index->new({ index_path => /path/to/index }); if($creating) { # Create from scratch if necessary $index->create({...
13.31 KB  
Utilities  -  AIR iPad 0.01
The AIR iPad is a desktop application created with Adobe AIR and Adobe Flex 4, it simulates the UI of the iPad. This is a very early version not much works in the app.
1.26 MB  
Libraries  -  Template::Plugin::Java::Utils 0.4
Template::Plugin::Java::Utils is a Perl module with utility functions for Template::Plugin::Java. SYNOPSIS use Template::Plugin::Java::Utils qw/list of subroutines to import/; SUBROUTINES createTemplate Creates a new Template with...
18.43 KB  
Development Tools  -  bblocked 5.6
bblocked is a state of the art proxy script created in PHP (compatible with both PHP4 >= 4.3.0 and PHP5) in order to free people from the unfair restraints of various filtering and to ensure that in the open internet, user’s privacy is never...
 
Finance  -  Home Savings Mobile Banking 4.1.1.0
Bank on the go with Home Savings mobile banking. Check balances, view transactions, transfer money, pay your bills, find the nearest branch office or ATM, plus lots more! Bank wherever you are with your local community bank. Home Savings....
9 MB  
Productivity  -  Not 8 1.1.3.0
Notepad App ** 1.1.3.3 Update - Notes sms, mail and social networking has added the ability to share it with. - Fixed issue with scrolling text. ** 1.1.0.0 Update - The password feature - New interface **...
1024 KB  
Education  -  Programming Convertor 2.0.0.0
Programming Convertor : This App Help The Programmer and Student to Convert some Type of Data to another Type. Whats the New Features in v 2.0 : 1-Improve the design and style. 2-Improve the text box. 3-Convert App to Free....
1024 KB  
Libraries  -  ClearCase::Wrapper::DSB 1.12
ClearCase::Wrapper::DSB Perl module contains David Boyces contributed cleartool wrapper functions. SYNOPSIS This is an overlay module for ClearCase::Wrapper containing David Boyces non-standard extensions. See perldoc ClearCase::Wrapper for...
18.43 KB  
NEW DOWNLOADS IN LINUX SOFTWARE, PROGRAMMING
Linux Software  -  Polling Autodialer Software 3.4
ICTBroadcast Auto Dialer software has a survey campaign for telephone surveys and polls. This auto dialer software automatically dials a list of numbers and asks them a set of questions that they can respond to, by using their telephone keypad....
488 B  
Linux Software  -  Total Video Converter Mac Free 3.5.5
Total Video Converter Mac Free developed by EffectMatrix Ltd is the official legal version of Total Video Converter which was a globally recognized brand since 2006. Total Video Converter Mac Free is a free but powerful all-in-one video...
17.7 MB  
Linux Software  -  Skeith mod_log_sql Analyzer 2.10beta2
Skeith is a php based front end for analyzing logs for Apache using mod_log_sql.
47.5 KB  
Linux Software  -  SLAX 6.0+
Slax is a modern, portable, small and fast Linux operating system with a modular approach and outstanding design. Despite its small size, Slax provides a wide collection of pre-installed software for daily use, including a well organized graphical...
190 KB  
Linux Software  -  GTK+ 2.5
GTK+, which stands for the GIMP Toolkit, is a library for creating graphical user interfaces for the X Window System. It is designed to be small, efficient, and flexible. GTK+ is written in C with a very object-oriented approach. Language bindings...
60 MB  
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by freedesktop.org, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB