davel / shipit Goto Github PK
View Code? Open in Web Editor NEWThis project forked from bradfitz/shipit
Software Release Tool
Home Page: http://search.cpan.org/~bradfitz/ShipIt/
This project forked from bradfitz/shipit
Software Release Tool
Home Page: http://search.cpan.org/~bradfitz/ShipIt/
NAME ShipIt - software release tool SYNOPSIS shipit OVERVIEW Releasing a new version of software takes a lot of steps... finding the next version number (and making sure you didn't already use that version number before), making sure your changelog is updated, making sure your "make dist" results in a tarball that builds, commiting changes (with updated version number), tagging, and uploading the tarball somewhere. Or maybe more steps. Or not some of the above. Maybe you forgot something! And maybe you manage multiple projects, and each project has a different release process. This is all a pain in the ass. You want to be hacking, not jumping through hoops. Your contributors want to see their patches actually make it into a release, which won't happen if you're afraid of releases. shipit automates all the hell. It makes life beautiful. HOW TO USE Three steps: run "shipit --write-config" to make a dummy/template config, edit config file, then run "shipit" again Step 1/3: Write out template config file In the root directory of your project, run: $ shipit --write-config And it'll bring up your $EDITOR, so you can do step 2... Step 2/3: Tweak your config file The default config file is something like: # auto-generated shipit config file. steps = FindVersion, ChangeVersion, CheckChangeLog, DistTest, Commit, Tag, MakeDist # svn.tagpattern = MyProj-%v # svn.tagpattern = http://code.example.com/svn/tags/MyProj-%v # CheckChangeLog.files = ChangeLog, MyProj.CHANGES Tweak away. You may want to add the "UploadCPAN" step at the end of steps, as it isn't included by default. It requires cpan-upload or cpan-upload-http installed. The comma-separate steps are ShipIt::Step subclasses. Each one may or may accept additional config, as you can see the CheckChangeLog step does. (although CheckChangeLog by default figures it out, how your changelog files are named) All values have sensible defaults, and any missing/extra keys generate errors. For more info on svn.tagpattern, see ShipIt::VC::SVN. Step 3/3: Run 'shipit' again From the root directory of your project, where your new .shipit config file is, type shipit: you@host:~/proj$ shipit And then it does the rest, after verifying with you the version number you want to release. If you're really cautious, run with "shipit --dry-run" instead. CONTRIBUTING If you'd like to contribute to ShipIt (with either a bug report or patch), see: http://contributing.appspot.com/shipit
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.