Always ship trunk: Managing change in complex websites (PDF)
(Link: Always ship trunk: Managing change in complex websites (PDF))
Uncategorized
(Link: Always ship trunk: Managing change in complex websites (PDF))
Uncategorized
Git is a distributed version control system. No, you don’t need to know what that means to use this guide. Think of it as a time machine: Subversion or CVS without the cruft.
If you make a lot of changes, but decided you made a mistake, this will save your butt.
This guide is for people who want to jump to any point in time with their project/game/whatever, and want something to use for themselves.
(Link: Git for the lazy – Spheriki)
Uncategorized
bin/svntag
Use inside a Subversion Working Directory with all changes checked in.
– Automatically finds the “trunk”
– Automatically creates the “tags” directory at the project root
– Creates a tag “tags/release-X” where X is the next integer
sbin/svncheckrel
Use to check is there’s a new Release to deploy to Target
– Exit Code is Success when the Release is ready to Deploy
– Exit Code is Failure when the Release is already Deployed
sbin/svnexportrel
Use to deploy a Release to Target (does not check)
– Copies Target to Target.old
– SVN Exports the Latest Release
– Creates RELEASE in Target for svncheckrel to use
puppet.subversion
Puppet Module using these tools for automatic deployment.
(Link: Subversion Utilities)
Uncategorized
For my own needs I’m only interested in the providers which don’t impose restrictions on the amount of private repositories. This eliminates SSH Control, Github, Beanstalk, Codaset, Bitbucket, and Active State Firefly.
I’ve ranked the remaining contenders based on how much storage you get for your buck within three price categories:
(Link: Comparing Private DVCS Hosting)
Uncategorized
Many tools fail to pass the recommendability threshold. There are two reasons why: poor capability or poor visibility.
Many tools garner consistent complaints from ThoughtWorkers about their lack of capability. (ThoughtWorkers being what they are, all tools, including the preferred set, get some complaints. Those behind the threshold get mostly complaints.)
(Link: MF Bliki: VersionControlTools)
Uncategorized
Codebase is developed in Ruby, using the Rails framework for the web application. In addition to this we have also developed our own libraries which power two of the most important parts of the system. Tripod is a library which provides SCM-agnositic access to repositories allowing us to easily interface with Git, Mercurial or Subversion repositories using a unified API. SCAM is our “source control access manager” and it interfaces directly with the Codebase database to control access to all repositories – regardless of the SCM, your request for access will pass through SCAM. We’ll post some blog entries with more details about our actual infrastructure in the next few weeks.
(Link: Codebase – Subversion hosting with complete project management – tickets, milestones.)
Uncategorized
Unlimited Repositories
Unlimited Trac Projects
Unlimited Users
Custom Domains
Custom Logos & Colors
SSL Secured
WebDAV Shared Drives
Scheduled Backups
2GB Storage
$1/GB Additional Storage
(Link: Repository Hosting – Subversion Hosting, Git Hosting and Trac Hosting)
Uncategorized
HTTP push/pull support
SSH push/pull support (with public key authentication)
Integrated flexible issue tracker
Per-repository wikis (backed by hg repositories)
Plenty of “services” for repositories, automatic issue resolving, web hooks, etc.
Email support (for both paid and free plans)
CNAME support, so you can keep the code on your own domain
Collaborate with other users easily
Source view with highlighting for many languages
Forks and Mercurial Queue (MQ) integration
A bunch of social aspects
RSS/Atom feeds for everything
Host static files on our CDN (Content Delivery Network)
(Link: bitbucket.org – Mercurial hosting)
Uncategorized
If you lack the courage to quit, then use Ant. Ant is the second best existing build tool for Java projects. Although inferior to Rake, Ant is still a great build tool. Ant is mature and stable, it is fast, and it comes with a rich library of tasks. Ant makes it possible (but not at all easy) to script rich, complex builds processes custom-tailored to your project.
So, write your own build tool, or else switch to Rake, or fight to switch to Rake, or quit and go some place where you can use Rake. And if all else fails, use Ant until you can find a new job somewhere else that uses Rake.
That’s it! Those are the only choices I can recommend! Because you never, ever, under any circumstances want to use Maven!
(Link: Java Build Tools: Ant vs. Maven)
Uncategorized
Table of Contents
* Feature Development
* Bug Fixes
* QA Branch Management
* Production Tagging
* Summary
* Notes
(Link: ReinH — A Git Workflow for Agile Teams)
Uncategorized
Created because we’d rather not use Maven. JavaGems provides gem hosting and gem creation for the JVM-based-language community. Instantly publish your gems and install them. Use the API to interact and find out more information about available gems. Become a contributor and enhance the site with your own changes.
(Link: javagems | awesome jvm gem hosting)
Uncategorized
Feature flags and flippers mean we don’t have to do merges, and that all code (no matter how far it is from being released) is integrated as soon as it is committed. Deploys become smaller and more frequent; this leads to bugs that are easier to fix, since we can catch them earlier and the amount of changed code is minimized.
This style of development isn’t all rainbows and sunshine. We have to restrict it to the development team because occasionally things go horribly wrong; it’s easy to imagine code that’s in development going awry and corrupting all your data. Also, after launching a feature, we have to go back in the code base and remove the old version (maintaining separate versions of all features on Flickr would be a nightmare). But overall, we find it helps us develop new features faster and with fewer bugs.
(Link: Flickr Developer Blog » Flipping Out)
Uncategorized