Entries Tagged as 'Version Control'

Git is Scary – But it doesn't need to be!

News , Tools of the Trade , Version Control 1 Comment »

I watched two Git preso over the last week by CF folks. They both tried really hard to make Git sound better than SVN, and easier to use.

But looking at their preso, if I was a newbie to source code management, I'd be scared. All that Git bash stuff is a nightmare!

Git isn't perfect, nor is it well suited for web development. But it also doesn't need to be scary.

As a long time SVN (and previously CVS) user, I moved to Git for all development earlier this year, but this was after watching preso and researching Git for years! And I found one common thread, it does better merging, but it can also be scary. Why? There aren't any good tools!

Earlier this year, the great folks at syntevo GmbH launched SmartGit, and it made Git sooooo much easier to use and manage. This is what made the switch from SVN (for which they have a killer tool called SmartSVN) so much easier, and really did it for me.

Maybe someday someone will create a version control tools best suited for web development, without the confusing terminology that Git and SVN has, but for now, we've found a great combo that works.

Each developer has his own branch in which he works, then we have a dev branch, a staging branch, a UAT branch, and a prod/master branch. Developers commit code in their branch on a daily basis. When they feel ready they merge in (which is very easy with SmartGit) their changes to the Dev branch. As other developers have also been committing code to the dev branch, they also merge out their changes from dev back into their branch, so that they have the latest changes. The dev branch is where intergrations testing can occur, all developers code meets up, and we do our own testing on the dev box. Once we're good, we merge from dev to stage, where QA does their testing on the staging server. And then when tickets are passed, then we merge from stage to UAT, which is on the same environment externally as prod. If we need to show off any code to customers early, we can do that here, and we also make sure the code runs OK in prod. And finally, when code has passed UAT testing, then we merge to MASTER, and push the update to the servers on the next launch. Works well for us.

Developers may also create their own experimental branches on the fly. I have one right now for testing our move from Verity to Solr, for example.

The only problem with this model is that you have to be careful when pushing up, as you can push up code that hasn't been fully passed. So you can cherry pick commits, or just be careful. This is where the "art" of source control comes in, there is no exact science, its all what works best for your team.

My greatest wish for source control would be if you could tag a commit as being at a specific level only. So if you commit code, and say this is, for example, "dev" only, any merge from dev to stage would ignore that code, until the ticket associated with that code passes on dev, and then it'll move up. This would make merges soooo much easier, and you could be sure your code will never make it to prod unless its passed at that level by QA. Anyways, wishful thinking.

Oh, and Git integration into Eclipse is half-baked, so much so its useless for me. I always have SmartGit and CFBuilder open side by side. Good thing is that SmartGit runs on most platforms!

Bookmark and ShareSubscribe

Security Alert – Subversion 1.6.4 Released

Server , Version Control No Comments »

Subversion 1.6.4 has been released to fix a vulnerability.

Version 1.6.4
(06 Aug 2009, from /branches/1.6.x)
http://svn.collab.net/repos/svn/tags/1.6.4

User-visible changes:
* fixed: heap overflow vulnerability on server and client
See CVE-2009-2411, and descriptive advisory at
http://subversion.tigris.org/security/CVE-2009-2411-advisory.txt

More details below.

Subversion 1.6.4 has been released, available from:

    http://subversion.tigris.org/downloads/subversion-1.6.4.tar.bz2

    http://subversion.tigris.org/downloads/subversion-1.6.4.tar.gz

    http://subversion.tigris.org/downloads/subversion-1.6.4.zip

    http://subversion.tigris.org/downloads/subversion-deps-1.6.4.tar.bz2

    http://subversion.tigris.org/downloads/subversion-deps-1.6.4.tar.gz

    http://subversion.tigris.org/downloads/subversion-deps-1.6.4.zip

 

THIS IS A SECURITY RELEASE, addressing the issue described at:

    http://cve.mitre.org/cgi-bin/cvename.cgi?name=2009-2411

The CVE page may not be public yet when you read this, but will be soon.

The full text of the advisory is available at:

    http://subversion.tigris.org/security/CVE-2009-2411-advisory.txt

This security issue affects both clients and servers.  Clients with commit access to a vulnerable server can cause a remote heap overflow.  Servers can cause a heap overflow on vulnerable clients that try to do a checkout or update.  Subversion 1.6.4 differs from 1.6.4 only in the fix for this issue.  Upgrading to Subversion 1.6.4 (or Subversion 1.5.7, released

simultaneously) is therefore strongly recommended for Subversion client and server installations on all platforms.

Release notes for the 1.6.x release series may be found at:

    http://subversion.tigris.org/svn_1.6_releasenotes.html

You can find the list of changes between 1.6.4 and earlier versions at:

    http://svn.collab.net/repos/svn/tags/1.6.4/CHANGES

 

Bookmark and ShareSubscribe

Subversion 1.6.3 Released

News , Version Control No Comments »

See announcement below.

I'm happy to announce Subversion 1.6.3, available from:

    http://subversion.tigris.org/downloads/subversion-1.6.3.tar.bz2
    http://subversion.tigris.org/downloads/subversion-1.6.3.tar.gz
    http://subversion.tigris.org/downloads/subversion-1.6.3.zip
    http://subversion.tigris.org/downloads/subversion-deps-1.6.3.tar.bz2
    http://subversion.tigris.org/downloads/subversion-deps-1.6.3.tar.gz
    http://subversion.tigris.org/downloads/subversion-deps-1.6.3.zip

The MD5 checksums are:

    8bf7637ac99368db0890e3f085fa690d  subversion-1.6.3.tar.bz2
    8357468ed2485b88151c50fb5deb28ca  subversion-1.6.3.tar.gz
    2a09e99c4a780e2fb84e68fd6c528ee6  subversion-1.6.3.zip
    22d3687ae93648fcecf945c045931272  subversion-deps-1.6.3.tar.bz2
    2f9db6ae8b2ae41cf7adacad47b27946  subversion-deps-1.6.3.tar.gz
    b589abbdeb207407673e3ce64a7b72cc  subversion-deps-1.6.3.zip

The SHA1 checksums are:

    88a4a21509f9d8f95a64f7545f3294d356f619c8  subversion-1.6.3.tar.bz2
    18666f632c80a6c2a67cfb172fe03dcf9bd79dff  subversion-1.6.3.tar.gz
    13fa4cefc1a6b982c01cd9a95a59a8e8cc233b61  subversion-1.6.3.zip
    db465834df2cec5f7a1d26597e2017af166a5768  subversion-deps-1.6.3.tar.bz2
    922dbf1c3fcb86451812c269b193dd968ec798ff  subversion-deps-1.6.3.tar.gz
    933bc1043376172fed5970014af1800e3d2ad2fa  subversion-deps-1.6.3.zip

PGP Signatures are available at:

    http://subversion.tigris.org/downloads/subversion-1.6.3.tar.bz2.asc
    http://subversion.tigris.org/downloads/subversion-1.6.3.tar.gz.asc
    http://subversion.tigris.org/downloads/subversion-1.6.3.zip.asc
    http://subversion.tigris.org/downloads/subversion-deps-1.6.3.tar.bz2.asc
    http://subversion.tigris.org/downloads/subversion-deps-1.6.3.tar.gz.asc
    http://subversion.tigris.org/downloads/subversion-deps-1.6.3.zip.asc

For this release, the following people have provided PGP signatures:

   Senthil Kumaran S [1024D/6CCD4038] with fingerprint:
    8035 16A5 1D6E 50E2 1ECD  DE56 F68D 46FB 6CCD 4038
   Paul T. Burba [1024D/53FCDC55] with fingerprint:
    E630 CF54 792C F913 B13C  32C5 D916 8930 53FC DC55
   Arfrever Frehtes Taifersar Arahesis [1024D/E06AFE3E] with fingerprint:
    17D9 DFDA EC0F E896 428A  D821 2041 9549 E06A FE3E
   Bert Huijben [1024D/9821F7B2] with fingerprint:
    2017 F51A 2572 0E78 8827  5329 FCFD 6305 9821 F7B2
   Blair Zajac [1024D/DA561D91] with fingerprint:
    3FAE C7E1 ADE8 572F 613C  F086 C572 2326 DA56 1D91
   Mark Phippard [1024D/035A96A9] with fingerprint:
    D315 89DB E1C1 E9BA D218  39FD 265D F8A0 035A 96A9
   Hyrum K. Wright [1024D/4E24517C] with fingerprint:
    3324 80DA 0F8C A37D AEE6  D084 0B03 AE6E 4E24 517C

Release notes for the 1.6.x release series may be found at:

    http://subversion.tigris.org/svn_1.6_releasenotes.html

You can find the list of changes between 1.6.3 and earlier versions at:

    http://svn.collab.net/repos/svn/tags/1.6.3/CHANGES

Bookmark and ShareSubscribe

Assembla? Codespaces? Unfuddle? Looking for your input!

Tools of the Trade , Version Control 11 Comments »

Guys, hoping you can help me out. I'm looking to move our company away from using SourceForge OnDemand (now CollabNet), towards something a bit more… fresher? In my analysis, I looked mainly at simplicity… simplicity for the developer and project manager. I'm probably missing tons, but I found some lower cost alternatives that were even more feature-rich than SourceForge OnDemand, while focusing on simplicity and ease of use.

Among the tops options are Assembla, Codespaces, and Unfuddle.

Have you guys used any of these tools? Thoughts? Do you suggest any alternatives?

Bookmark and ShareSubscribe

Subversion 1.6.2 Released

News , Tools of the Trade , Version Control No Comments »

See the notice for details.

——————————————————

I'm happy to announce Subversion 1.6.2, available from:

    http://subversion.tigris.org/downloads/subversion-1.6.2.tar.bz2
    http://subversion.tigris.org/downloads/subversion-1.6.2.tar.gz
    http://subversion.tigris.org/downloads/subversion-1.6.2.zip
    http://subversion.tigris.org/downloads/subversion-deps-1.6.2.tar.bz2
    http://subversion.tigris.org/downloads/subversion-deps-1.6.2.tar.gz
    http://subversion.tigris.org/downloads/subversion-deps-1.6.2.zip

Release notes for the 1.6.x release series may be found at:

    http://subversion.tigris.org/svn_1.6_releasenotes.html

You can find the list of changes between 1.6.2 and earlier versions at:

    http://svn.collab.net/repos/svn/tags/1.6.2/CHANGES

Questions, comments, and bug reports to users@subversion.tigris.org.

Thanks,
- The Subversion Team

——————————————————

Bookmark and ShareSubscribe
Powered by Mango Blog. Design and Icons by N.Design Studio
RSS Feeds