140 likes | 271 Views
Contributing to ODTBX: A Guide for MacOS. Ravi Mathur Updated December 5, 2012. Introduction – Git Clients. ODTBX uses Git (see the ODTBX Git Tutorial ) SourceForge account needed (free). Recommended Git Clients
E N D
Contributing to ODTBX:A Guide for MacOS Ravi Mathur Updated December 5, 2012
Introduction – Git Clients • ODTBX uses Git (see the ODTBX Git Tutorial) • SourceForge account needed (free). • Recommended Git Clients • Command Line: Built-in git client. Get it by installing XCode (available from App Store), then going to XCode Preferences Downloads Command Line Tools. Use the command-line version of this tutorial. • SourceTree is a free full-featured GUI client for Mac. This guide assumes SourceTree is being used, but other GUI clients will have similar functionality.
Get the ODTBX Repository • SourceTree Clone Repository: File New • ODTBX URL: • ssh://username@git.code.sf.net/p/odtbx/git 1: Your SourceForge username (enter password later) 2: Desired repo location 3: Desired SourceTree name 4: Clone it! (~400MB download, may take time) Read do’s and don’ts while waiting…
Contributing – Do’s • Make sure your name & email are set in Git • You should get credit for your work! • SourceTree: Preferences… General • Submit code for one feature at a time. • Repeat this process for each feature to submit. • Comment and organize your code • Make it easy for ODTBX developers to understand and incorporate your code into ODTBX. • Test your code before submitting • Needs no explanation…
Contributing – Don’ts • Don’t use the repo to “dump” documents • EVERYONE will download EVERYTHING you submit! • We don’t want to bloat the main ODTBX repo. • Use the ODTBX webpage for this (ask Admin). • Don’t commit audio/video/multimedia files. • Exception: files that are necessary for code to work (e.g. graphics needed by a custom GUI). • Exception: articles/papers directly explaining algorithms used in your code. • Don’t commit ITAR/sensitive code • The SourceForge repo is VERY public!!
ODTBX Developer Setup • ONLY DO THIS STEP IF: • You need to test your code with ODTBX. • Otherwise, skip this entire slide (e.g. if you are just submitting codefor review). • On the ODTBX Developer Wiki • Follow the “Tools & Environment Setup” page. • Make sure you set up your startup.m file. • Test by running estbat_test in Matlab. • It should return 0 (zero) if successful. • Don’t worry about warnings from the test.
Branches in Git • If you know Subversion, FORGET SUBVERSION. • Git branches are VERY light, VERY easy to use. Currently Checked-out Branch (in bold) Double-click to checkout “develop” branch ALWAYS start from the “develop” branch!!
Step 1: Create a Branch • Start by checking out the “develop” branch. • SourceTree: Repository Branch… • Verify that your branch is checked out! MUST branch from “develop”!! Short descriptive branch name
Step 2: Organize Your Files • Create new folder at root of your ODTBX repo • All your files (source, documents, etc…) go in here. • Use the same name as your branch. • Only add files to odtbx/ or vendor/folders if you were approved to do so. Your folder: Organize your submission files in here
Step 3: Add Your Files to Repo 1: Make sure your branch is checked out 2: Select “Working Copy” 3: Select your code folder 4: “Add” folder to the repo
Step 4: Commit Your Files 1: “Commit” work to your repo 2: Add commit message - Check Author Name & Email
Step 5: Submit Your Branch • Get permission from ODTBX admin first! • Request access to ODTBX “contributor” group • SourceTree: Repository Push… ✔ 1: Select your branch to push it to SourceForge - Unselect “develop” 2: Push it! Everything committed to your branch will be added to SourceForge.
Wrap-Up Submission • Inform ODTBX Admin(s) of contribution • Include your branch name • Your files will be evaluated…patience! • Code evaluation will be done by ODTBX developers … you may be asked for clarification. • Code incorporation can be tracked by doing a Git “Pull” while your branch is checked out. • SourceTree: Repository Pull… • You will have to do “Developer Setup” to test your files within ODTBX.
Conclusions / Notes • Thank you for your submission! • ODTBX Admins listed on SourceForge • http://sourceforge.net/projects/odtbx/