Upload
kuang-che-liu
View
556
Download
0
Embed Size (px)
DESCRIPTION
git, editor, open source, project management, continuous integration, vagrant, software development
Citation preview
Getting Sared with the Tools of Software
Developmentkcliu @ MACLab 2013
13年7月10日星期三
me
• kcliu
• Twiter, Plurk, Github
• Blog: http://kcliutw.tumblr.com/
• Open Source, Hacking Thursday, g0v.tw
13年7月10日星期三
Programming...?
13年7月10日星期三
Edior?
13年7月10日星期三
Backup?
13年7月10日星期三
Share?
+
music_app_07102013.zip
13年7月10日星期三
“This city deserves a beter class of criminal”
13年7月10日星期三
Version Control
• Backup
• Hisory (when, what, why)
• Documenting
• Branch
• Cost of transfer/learn/trace
13年7月10日星期三
Subversion(SVN)
13年7月10日星期三
Subversion(SVN)
• Problem is....
• When network is down...
• Slow
13年7月10日星期三
Git
• Fast
• Distribued
• Local commit/Remoe push
13年7月10日星期三
Git
13年7月10日星期三
Git
$ git init$ git add *.c$ git add README$ git commit -m 'initial project version'
13年7月10日星期三
Github
• Reposiory server
• Use git
• Coder’s facebook
• Free if open sourced
13年7月10日星期三
Git
• Hard o maser
• Resources
• Pro Git http://git-scm.com/book
• http://www.youtube.com/wach?v=BJSFGGfpRSU by ihower
• Ineractive tuorial
• http://pcottle.github.io/learnGitBranching/
13年7月10日星期三
GUI Tools• Github for mac http://mac.github.com/
13年7月10日星期三
Text Edior
• Vim
• Sublime Text 2
13年7月10日星期三
Why?
• Pretty Synax
• Split Editing
• Powerful Plugins
• Cross Platform
• Cusomize Anything
13年7月10日星期三
Pretty Synax
13年7月10日星期三
Split Editing
13年7月10日星期三
Powerful Plugins
gitgutter
13年7月10日星期三
Powerful Plugins
BracketHighlighter
13年7月10日星期三
Powerful PluginsSnippets
13年7月10日星期三
Cusomizing
"trim_trailing_white_space_on_save": true,"translate_tabs_to_spaces": true,"tab_size": 4,"highlight_line": true
13年7月10日星期三
Cusomizing
• Font for coding
• Source Code Pro by Adobe
• Confusable characers
13年7月10日星期三
Source Code Pro
13年7月10日星期三
Team Collaboration
13年7月10日星期三
Coding Style
• ediorconfig (http://ediorconfig.org/)
• supports Sublime Text 2/Vim ...ec
13年7月10日星期三
Project Management
• Github
• Trello
13年7月10日星期三
Github
• Issue Tracking
• git push/pull, merge
• Free privae repo: bitbucket
13年7月10日星期三
Github Diff
13年7月10日星期三
Issue Tracking
13年7月10日星期三
Github
13年7月10日星期三
Trello
• Organize everything
• Not only for programmers
13年7月10日星期三
Trello
13年7月10日星期三
13年7月10日星期三
Continuous Inegration
• Build (compile source code)
• Run esting
• Deployment
• Feedback
13年7月10日星期三
Continuous Inegration
13年7月10日星期三
Continuous Inegration
• It’s all about auomation
• Coders are lazy
• Advanced: when I’m saving a file...
13年7月10日星期三
Continuous Inegration
• Travis CI
• Hosed CI service
• Inegraes with Github
• Run afer every Commit
13年7月10日星期三
13年7月10日星期三
13年7月10日星期三
Group Chat
• Hipchat (https://www.hipchat.com/)
• Why not Skype/Facebook?
• Free if members <= 5
• Complee chat hisory
• Inegraes everything
• Github, TravisCI, Trello...
13年7月10日星期三
13年7月10日星期三
One More Thing...
• Vagrant (http://www.vagrantup.com/)
• A ool for creating and distributing virtualized development environments.
• Virtual machine
• http://www.slideshare.net/ihower/vagrant-osdc
13年7月10日星期三
Questions?13年7月10日星期三