Presentation is loading. Please wait.

Presentation is loading. Please wait.

Git Ready and Git Going By Geoff Weiss Thursday, July 24, 2014.

Similar presentations


Presentation on theme: "Git Ready and Git Going By Geoff Weiss Thursday, July 24, 2014."— Presentation transcript:

1 Git Ready and Git Going By Geoff Weiss Thursday, July 24, 2014

2 Topics ● Free environment for II GS development to support git usage ● Introduction to git ● General purpose git usage ● Apple II GS specific development

3 Free II GS Development Environment Part I

4 Free II GS Development Environment ● MPW II GS is freely available from the Golden Orchard CD ● Apple IIGS development tools ● MPW is freely available from Apple ● Needed to run MPW II GS ● Use Basilisk II JIT emulator ● Use Mac OS System 7.5.5 ● Use Netatalk for file storage ● Use git on host computer

5 Free II GS Development Environment ● Handles Mac Resources ● Uses modern revision control not available for Classic Mac OS ● Does not require a real Macintosh ● Apple software can be used in emulation only ● Cross platform solution for any modern operating system ● Works on Solaris!

6 Free II GS Development Environment ● Basilisk II JIT ● 32-bit ● Solaris packages to be included with presentation when hosted on www.kansasfest.org

7 Free II GS Development Environment: Basilisk II ● Add packages ● pkgadd -d THOTbasilisk2.pkg ● pkgadd -d THOTbasilisk2-desktop.pkg

8 Free II GS Development Environment: Basilisk II ● Download System 7.5.5 and install OS ● Or use pre-configured startup disk with host integration ● wget http://www.redundantrobot.com/macemulator/MacStartup.img

9 Free II GS Development Environment: Basilisk II ● Run Basilisk II

10 Free II GS Development Environment: Basilisk II ● Add boot disk image

11 Free II GS Development Environment: Basilisk II ● Configure screen resolution

12 Free II GS Development Environment: Basilisk II ● Configure networking

13 Free II GS Development Environment: Basilisk II ● Configure memory and ROM ● Click Start

14 Free II GS Development Environment: Basilisk II ● Mac desktop boots

15 Free II GS Development Environment: Basilisk II ● Shutdown Mac emulator ● mkfile -n 200m GS.Dev.po ● Add GS.Dev.po disk image to Basilisk II Volumes ● Click Start. Boot Mac OS. ● Format disk. Name GS.Dev

16 Free II GS Development Environment: MPW ● Download MPW 3.5 Installer http://staticky.com/mirrors/ftp.apple.com/developer/Tool_Chest/Core_Ma c_OS_Tools/MPW_etc./MPW-GM_Images/MPW-GM.img.bin

17 Free II GS Development Environment: MPW ● MPW II GS is available on Golden Orchard CD ● Download version 1.0 from http://digisoft.callapple.org/Downloads/GO-G.S-1.0.iso ● Documentation and software for sale from Syndicomm

18 Free II GS Development Environment: MPW ● Extract the Programming partition ● dd if=GO-G.S-1.0.iso of=GO-Programming.iso bs=512 skip=186156 count=256000

19 Free II GS Development Environment: MPW ● Shutdown Mac OS. ● Add GO-Programming.iso to Basilisk II Volumes ● Start to boot Mac OS ● Browse host OS disk (Unix) and copy MPW- GM.img.bin to GS.Dev disk

20 Free II GS Development Environment: MPW ● Unstuff MPW-GM.img.bin with Stuffit Expander ● Open MPW-GM.img ● Open MPW-GM disk ● Copy contents to GS.Dev disk ● Interfaces&Libraries folder ● MPW folder

21 Free II GS Development Environment: MPW Edit GO-Programming:Apple:Development Tools:For MPW IIGS:Installation:Install (Use MPW Editor) ● Find line that has: Duplicate {Option} :Tools:≈ “{MPW}”Tools: ● Above it, add these three lines: if ! `Exists -d “{MPW}”Interfaces`; NewFolder “{MPW}”Interfaces; end if ! `Exists -d “{MPW}”Libraries`; NewFolder “{MPW}”Libraries; end Duplicate {Option} :Libraries:≈ “{MPW}”Libraries:

22 Free II GS Development Environment: MPW ● MPW Shell command: :Installation:Install ● Select No for prompting of overwriting files. ● Manually Edit GS.Dev:MPW:MPW.Help since the installer doesn't do this step. ● After line: Help Miscellaneous# a list of commands in Projector, a projector/source control system ● Add this line: ● Help MPWIIGS# a list of commands for IIgs Cross Development ● Quit MPW

23 Free II GS Development Environment: Networking ● Add packages ● pkgadd -d GSbdb.pkg ● pkgadd -d Gsnetatalk.pkg ● pkgadd -d GSnetatalk-stanza.pkg

24 Free II GS Development Environment: Networking ● Create case insensitive network share: zfs create -o casesensitivity=insensitive rpool/export/iigs chown -R $USER:staff /export/iigs

25 Free II GS Development Environment: Networking ● Configure Apple Filing Protocol echo "- -tcp -noddp -uamlist uams_dhx.so,uams_clrtxt.so,uams_dhx2.so - nosavepassword" > /opt/GSnetatalk/etc/netatalk/afpd.conf

26 Free II GS Development Environment: Networking ● Add the single following line to the penultimate line to /opt/GSnetatalk/etc/netatalk/AppleVolumes.default /export/iigs "IIGS" allow:@staff cnidscheme:dbd options:usedots,invisibledots,upriv,caseinsensitive perm:0770

27 Free II GS Development Environment: Networking ● Netatalk will start automatically on the next boot. It can be manually started with: /etc/init.d/netatalk start

28 Free II GS Development Environment: Networking ● Download: ● http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English- North_American/Macintosh/Networking-Communications/Open_Transport/OT_1.1.2- Net_Install.sea.bin ● http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English- North_American/Macintosh/Networking- Communications/AppleShare_Client/AppleShare_Client_3.7.4.img.bin

29 Free II GS Development Environment: Networking ● Browse host OS disk (Unix) and copy OT_1.1.2- Net_Install.sea.bin and AppleShare_Client_3.7.4.img.bin to GS.Dev disk

30 Free II GS Development Environment: Networking ● Unstuff archived files ● Run Open Transport Installer in the “Net Install” Folder ● Mount the “AppleShare Client 3.7.4.img” disk image and run the Installer on the “AppleShare Client” Disk

31 Free II GS Development Environment: Networking ● Configure TCP/IP Networking

32 Free II GS Development Environment: Networking ● Select Apple – Chooser ● Click AppleShare ● Click “Server IP Address...” ● Enter IP Address from the host's network connection (get IP from ifconfig -a )

33 Free II GS Development Environment: Networking ● Enter host OS username next to “Name:” ● Enter host OS password next to “Password:” ● Click OK ● Select IIGS file system ● Click OK

34 Free II GS Development Environment: Networking ● Manage all files for revision control in the IIGS file system

35 Introduction to Git Part II

36 Introduction to Git ● Revision Control ● Sophisticated ● Distributed ● Scalable ● Great for code management ● Available for all major computer platforms

37 Introduction to Git ● Install git ● Solaris and derivatives pkg install git ● Linux (i.e. Centos, RedHat, Oracle, SUSE) yum install git-core ● Windows http://msysgit.github.io/ ● Mac OS X http://code.google.com/p/git-osx-installer/

38 Introduction to Git ● Cloud storage options ● GitHub ● BitBucket ● Free for personal use ● Share OpenSource projects ● Collaborate with others ● Fork code base ● Pull Requests to integrate changes upstream

39 Introduction to Git ● Have to know only one command: git ● Use arguments for functions and parameters ● Help information available ● git help

40 Introduction to Git: Prepare Git ● Set up name and email address git config --global user.name "Name" git config --global user.email "email@address.com"

41 Introduction to Git: Prepare Git ● Set Line Endings ● Non Windows git config --global core.autocrlf true ● Windows git config --global core.autocrlf input ● II GS development, add filter ●.git/config: [filter "cr"] clean = tr '\\r' '\\n' smudge = tr '\\n' '\\r' ● And.git/info/attributes (or.gitattributes if it should be versioned) * filter=cr

42 Introduction to Git: Create Repo ● Create Repository ● Make a new project ● Create a new directory or cd into one ● git init

43 Introduction to Git: Add file/directory ● Add content to repository ● Create a file or directory ● git add file/directory ● git commit -m “description of change” ● Opens in default editor ● Force git to use a specific editor with this command: ● git config --global core.editor "/full/path/to/editor"

44 Introduction to Git: Add file/directory ● Add content to repository ● Create a file or directory ● git add file/directory ● git -m “description of change” ● Opens in default editor ● Force git to use a specific editor with this command: ● git config --global core.editor "/full/path/to/editor"

45 Introduction to Git: Add file/directory ● Edit content in directory ● Add a new file ● git add ● git commit ● Edit existing file ● git add. ● git commit

46 Introduction to Git: terminology ● working directory/tree ● Directory with the files that are in revision control and any subdirectories ● stage ● active set of changes not yet committed ● Index ● Difference between working tree and stage

47 Introduction to Git: Check Status ● Check status ● git status ● Quickly check the status of the working directory and repository

48 Introduction to Git: Git Log ● View log ● git log ● View full log details ● git log –pretty=oneline ● Place information on a single line ● Other samples ● git log --pretty=oneline --max-count=22 ● git log --pretty=oneline --since='5 minutes ago' ● git log --pretty=oneline --until='5 minutes ago' ● git log --pretty=oneline --author= ● git log --pretty=oneline --grsph ● git log –-pretty=oneline -all

49 Introduction to Git: Git Alias ● Simplify git functions and parameters into a single word ● Provide svn compatibilty ● git config --global alias.co checkout ● git config --global alias.ci commit ● Display a pretty commit tree graph ● git config --global alias.graph "log --graph -- oneline –all" ● Aliases are placed in ~/.gitconfig

50 Introduction to Git: More Info ● More Information ● http://githowto.com

51 Introduction to Git: MPW Use ● Files written to the host system via netatalk will have the data fork and an AppleDouble fork. ● git add filename ● git add.AppleDouble/filename

52 Introduction to Git: Followup ● Assistance with Apple II git usage can be found on the Apple II irc channel.


Download ppt "Git Ready and Git Going By Geoff Weiss Thursday, July 24, 2014."

Similar presentations


Ads by Google