Bazaar VCS Lightning Talk

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Bazaar VCS Lightning Talk - Presentation Transcript

    1. Bazaar Version Control http://bazaar-vcs.org
    2. Why Bazaar? • Lightweight and simple • Python based thus x-platform • Plugin architecture • No dependancy on a centralised repo • Copies of revisions locally and remotely • Allows commits locally when offline
    3. Set-up a versioned dir $ cd ~/bazaar $ bzr init demo ~/bazaar/demo is now set-up to be versioned
    4. Let’s add a file $ cd ~/bazaar/demo $ vim test.css $ bzr add
    5. Let’s add a file $ cd ~/bazaar/demo $ vim test.css $ bzr add added test.css
    6. First commit $ bzr commit -m “my first commit”
    7. First commit $ bzr commit -m “my first commit” added test.css Committed revision 1.
    8. Publish Simply copy the directory to a webserver Other people can take a branch by running: $ bzr branch http://server.co.uk/branch/dir/ For read write share via SFTP.
    9. Useful commands bzr checkout - checks out branches. bzr update - update the local files to match those in the repo. bzr revert - reverts files back to a specific rev bzr status - current status of modified, added and removed files bzr log - the log of commits bzr ignore - allows patterns of files to ignore .DS_Store!! bzr uncommit - reverse a commit bzr diff - provides a diff of revisions
    10. Shared Repository $ cd ~/bazaar/ $ bzr init-repo --no-trees sftp://server/path/to/ bzr/ $ bzr init sftp://server/path/to/bzr/bigmuffin $ bzr checkout sftp://server/path/to/bzr/bigmuffin remote note: --no-trees prevents trees being created on the remote repo.
    11. Adding and committing $ cp -R ~/projects/bigmuffin/* ~/bazaar/bigmuffin/ $ bzr add $ bzr status $ bzr commit -m “bigmuffin project files added”
    12. Conflicts A conflict is created when the merging algorithm cannot make sense of the changes. Should a conflict occur you will end up with several files being created. If the file with a conflict is style.css you will end up with: styles.css styles.css.BASE - The common base styles.css.OTHER - The branch styles.css.THIS - Your changes.
    13. Resolving Conflicts Compare styles.css.OTHER and styles.css.THIS and manually rectify the differences. The merged file needs to be called styles.css Make sure you delete styles.css.THIS Then run: $ bzr resolve file
    14. Resolving Conflicts Bazaar will automatically delete the other files Macs have a really nice diff app for this which is included with xcode. It’s called FileMerge.
    15. Branching & Merging $ cd ~/bazaar/ $ bzr branch sftp://server/path/to/bzr/bigmuffin sftp:// server/path/to/bzr/myamazingfeature $ bzr checkout sftp://server/path/to/bzr/ myamazingfeature amazingfeature $ cd amazingfeature $ cd ~/bazaar/bigmuffin $ bzr merge ../amazingfeature
    16. Plugins Bazaar Email - a nice plugin that simply sends diffs of commits to an email address of your choice. Publish-bot - sends commit messages to irc Commit selector - allows you to choose what files you commit.
    17. Points of interest Mozilla took a look at bazaar for version control and compared it with mecurial (http://www.selenic.com/ mercurial/wiki/) another Python based decentralised VCS. Their issue with bazaar was mainly around speed but... All of the points of speed have been a focus of the Bazaar team since then and as a result subsequent versions have increased dramtically in performance.
    18. Points of interest Bazaar is a canonical project the people behind Ubuntu. Launchpad.net is Canonical’s sourceforge. As a result it’s file hosting is built around bazaar. Though a little rough around the edges it shows promise.
    19. Easter Egg $ bzr rocks
    20. Easter Egg $ bzr rocks It sure does!

    + Stuart  ColvilleStuart Colville, 3 years ago

    custom

    2491 views, 0 favs, 2 embeds more stats

    A brief introduction to the awesome Python based ve more

    More info about this document

    CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

    Go to text version

    • Total Views 2491
      • 2480 on SlideShare
      • 11 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 55
    Most viewed embeds
    • 10 views on http://muffinresearch.co.uk
    • 1 views on http://www.netvibes.com

    more

    All embeds
    • 10 views on http://muffinresearch.co.uk
    • 1 views on http://www.netvibes.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories