google code tutorial via chat
TRANSCRIPT
-
8/9/2019 Google Code Tutorial via Chat
1/13
GLUG Meerut
Fwd: "Quick Start Chat" to Google Code Hosting for newbies {#qsc
#google}
narendra sisodiya
---------- Forwarded message ----------From: narendra sisodiya Date: Thu, Nov 5, 2009 at 12:46 AMSubject: "Quick Start Chat" to Google Code Hosting for newbies {#qsc #google}To: IITDLUG Cc: [email protected]
Hi, I normally avoid chatting on Linux topic. and I hate whensomeone ask his/her problem on chat. I hate because It is one to onecommunication. I redirect such newbies to mailing list so that other
can participate into it. Google index mailing list thread so thatother can read such thread after google search. But I found one usefulthing in one to one chat system. one of one chat system can be usefulfor guiding the procedure to newbies.
Today when Abhishek Indoria (A 14 year old school boy, OLPCcontributor) asked me how he can put his source code to some hostingsite, I immediately got idea of "Quick Start Chat". In this system Ihave explained him each and every steps and he followed all steps. Ialways wanted to make a tutorial on how to get started with googlecode hosting but now I have spent 2-3 hour teaching on chat to produce"quick start chat". You can also blog such "quick start chat" astutorial.
11:22 AM Abhishek: Dude, I know you may be busy...erm..do you knowabout GIT? or subversion?11:23 AM me: I have used only svn
but git is something which is better to learnAbhishek: erm...I need to set up my whole project source code online...how do I do that?
11:24 AM me: you can do it using sourceforge or Google code hostinggoogle code hosting use SVGyou can use github toogithub use GIT
11:25 AM Abhishek: Sourceforge.net seems good...But, I need to upload
the Source in zip or rar or .tar format instead of erm...open editingversion like GIT or SVN?me: no no ,, do not upload tar or zip file
11:26 AM first create a project on these siteand then make a checkout
Abhishek: I have created the project...Checkout?me: yes,,, checkout the empty projectAbhishek: You know, I feel like stupid as I am only 14 and have loads
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
of 13 06/29/2010 11:15
-
8/9/2019 Google Code Tutorial via Chat
2/13
to learn;)me: then put your files into it
11:27 AM seee, I learn these things at the age of 24,,,after making a empty checkout ,, you need to paste files into itthen add files using
11:28 AM svn add filename.cppafter that you need to comit the files
using "svn ci" commandAbhishek: Ohh..Okay, I am logging into sourceforge...I'll see what I
can do, thanks;) Did you read The Lost Symbol by Dan Brown or Code toZero by Ken Follet?11:29 AM me: I suggest to use google code hosting,,
I have used it ,, and it has cool featuresAbhishek: Erm.. The thing is...whenever I try Google Code, I can't upload a damn single file.. Dunno why:(
11:30 AM me: Let me guide you,,Do you have svn installed ??
Abhishek: yup.wait...
11:31 AM I reinstalled Ubuntu yesterday,,, SVN Not installed...me: ok,, just install svn command,,it wont take much time
11:32 AM mean while go to google code hostingand create a new project
Abhishek: okay...me: http://code.google.com/hosting/createProjectdo you have google wave account ?
11:33 AM Abhishek: No..but I have already created a project..whats google wave?11:34 AM me: leave google wave,,, Give me link to google project
your project linkAbhishek: wait please.
11:35 AM code.google.com/p/boomingbang/me: click it,, and go to source tab
11:36 AM Abhishek: okay..now?
me: yupyou can see checkout command
Abhishek: yes...11:37 AM me: send me11:38 AM Abhishek: eh.. svn checkouthttps://boomingbang.googlecode.com/svn/trunk/boomingbang --usernamehackerboymayabhi
when I do that...it sayssvn: URL 'https://boomingbang.googlecode.com/svn/trunk'doesn't existme: see,, you have deleted the trunk
11:39 AM When you create the new project it make 4 directory1) trunk2) wiki3) branch4) tag
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
2 of 13 06/29/2010 11:15
-
8/9/2019 Google Code Tutorial via Chat
3/13
Abhishek: oh..me: you it will suggest you to make new project
11:40 AM just delete it and create new projectAbhishek: okay..
11:42 AM http://code.google.com/p/imperius/11:43 AM me: Now go to source code and give me the checkout command11:44 AM Abhishek: now. it says CHECKED OUT REVISION 1...wait... svn
checkout https://imperius.googlecode.com/svn/trunk/ imperius--username hackerboymayabhi ...DO you need the password?me: Nope,never share password
Abhishek: okay.me: now open a terminalAbhishek: doneme: and create a directory where you want to create code
11:45 AM exmkdir MyProjectcd MyProjectnow apply same command by remove trunk out of it
11:46 AM svn checkout https://imperius.googlecode.com/svn/ imperius--username hackerboymayabhi11:47 AM Abhishek: kayme: show me the outputIt will ask for password, it is there at google code website
11:48 AM Abhishek: A imperius/trunkA imperius/branchesA imperius/tagsChecked out revision 1.me: finenow you can see 3 directorywhich you have checked out
Abhishek: okay...11:49 AM me: see trunk will be needed for your code
so now cd trunkAbhishek: okay.
11:50 AM me: send me output of these 3 command - pwd, ls -l. svn statusAbhishek: wait, please.pwd -- /media/Disk 3/BoomingBang/codenamei/imperius/trunk
11:51 AM ls -l : total 0svn status ... Nothing.
me: ok,now create a new file
or you can directly paste your code file here11:52 AM Abhishek: I have folders too...me: I will show you how to add commit using one file,,you can do that later
11:53 AM just paste one fileAbhishek: okay.done
11:54 AM me: give me "svn status"
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
3 of 13 06/29/2010 11:15
-
8/9/2019 Google Code Tutorial via Chat
4/13
Abhishek: ? configurethats the status ^^
11:55 AM me: yes, it is saying, It is that configure is a new filenow you need to add this file to svn systemapply"svn add configure" command
11:56 AM Abhishek: saying: A configure
I think done.me: yes,, but change are localyou need to comit the change to mail projectuse"svn ci filenames" to comit
11:57 AM now use "svn ci configure"give me the output
Abhishek: --This line, and those below, will be ignored--
AM configureThere is NANOtext editor
11:58 AM okay...me: yes,, while commiting the files you need to write comments
11:59 AM and then save itAbhishek: after the saving of file, though I entered it empty;)
...Its saying...Adding configureTransmitting file data .Committed revision 2.me: Wow,,,check the code,,google url
http://code.google.com/p/imperius/updates/list12:00 PM It is listing your changes
can you add me in your project for a moment so that I will showsomething more,,,Abhishek: wow:) Excellent...thanks..okay, I can add you...me: this is just 30%
12:01 PM tutorialsee your files at
http://code.google.com/p/imperius/source/browse/#svn/trunkAbhishek: commitors or owners or contributors?
12:02 PM me: commiterjust add me as commiter
12:03 PM Abhishek: okay.12:04 PM done12:05 PM me: just a secound12:06 PM checking out code now12:08 PM I have added a new test file,,12:09 PM just apply svn status command
send me the outputAbhishek: nothing.
12:11 PM me: svn status --show-updates --verbosetry this
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
4 of 13 06/29/2010 11:15
-
8/9/2019 Google Code Tutorial via Chat
5/13
give me output12:12 PM Abhishek: * test.cpp2 2 hackerboymayabhi configure* 1 1 ? .Status against revision: 312:13 PM messed up:)me: try "svn st -u"
12:14 PM Abhishek: * test.cpp* 1 .Status against revision: 3me: yes,
12:15 PM it means,, your files are not uptodated,,just apply "svn update" commandto get latest code by other developers
Abhishek: okay..done that.me: always send output of each command
12:16 PM Abhishek: A test.cppUpdated to revision 4.me: see, I have made 2 rivision,,
so now our code is at revision number 412:17 PM everytime you update change to trunk, It will make a newrevision numberAbhishek: okayme: anytime you can switch to old revision number toonow you modify test.cpp
12:18 PM Abhishek: how? ci is not working.me: you have test.cpp file?Abhishek: yup!
12:19 PM me: just open with any editor and add somethingadd a linedone??
12:20 PM Abhishek: yeah.me: apply,, svn stsvn statusboth are same commandapply anyone
Abhishek: nothing...12:21 PM me: if you apply svn st command , It will give you somethinglike - "M test.cpp"
give me output of ls, cat test.cpp12:22 PM Abhishek: ls : configure test.cpp
cat:::::::: test.cpp#include
using namespace std;int main(){//hello , code is still incomplete ;cout
-
8/9/2019 Google Code Tutorial via Chat
6/13
Abhishek: nothing:(me: I think you can not saved your changes
12:24 PM what editor you are using?Abhishek: geditme: Oppps
12:25 PM Abhishek: it says..at revision 5me: you can commit your changes,, It wont show,,,
why you commited your changes,, :( I didn't told you,,now modifiy the file again using gedit
Abhishek: sorry:(12:26 PM done.me: now apply svn st
12:27 PM or svn statusAbhishek: M test.cppme: yes,, This mean,, test.cpp is modified by you,,
12:28 PM you can check the d ifferecealsoapply "svn d iff test.cpp"send output
Abhishek: Index: test.cpp===================================================================- test.cpp (revision 5)+++ test.cpp (working copy)@@ -6,4 +6,5 @@return 0;}// I know that code is incomplete+// I know I am a jerk and I don't like C++12:29 PM me: this is a text based +/- line which will tell you whatyou have added and de leted
but I will suggest to useGUI diff tool
Abhishek: okay...12:31 PM me: I saw your comit,, you are now sending log message while comitting
see th is url,, http://code.google.com/p/imperius/source/list
you can see differece b/w comit by you are me12:32 PM apply commandAbhishek: got that..listme: export SVN_EDITOR="vi"you need to set environment variable,,have you used vi edut???
12:33 PM ever??Abhishek: I used vi edit...nor edut;)me: ever was mispelt as edut
12:34 PM have you appled that export commandAbhishek: yesme: now appy "svn ci" command to comit your changes
12:36 PM press "i" in vi editor to write comment (log message), themuse Esp + ":wq" + "Enter" to save log
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
6 of 13 06/29/2010 11:15
-
8/9/2019 Google Code Tutorial via Chat
7/13
Abhishek: done.me: ok,,
12:37 PM so you have lean ,,, adding files and commiting files*learn
Abhishek: yup!12:39 PM me: you can anytime compare the changes in two revision12:40 PM Abhishek: okay...what about folders? when I have to upload them?
12:41 PM me: just paste folder(directory) into trunkthen add folder and filesusingsvn add commandpaste folder
Abhishek: okay. thanksme: nowlets do it
12:42 PM Abhishek: okay...should I update?12:43 PM me: let me send "svn st -u"12:44 PM Abhishek: ?12:45 PM should I commit?
me: no,, first send me out of "svn st"also install "diffuse" in other tab,,,
12:46 PM this will needed to view the source code changes12:47 PM ??Abhishek: installingdone.
12:48 PM now what?me: have you added the folder??to svn ??locally
12:49 PM plz send me output of "svn st -u" command12:50 PM Abhishek: A 0 build/m4A 0 build/m4/sdl.m4A 0 build/m4/ax_cflags_warn_all.m4A 0 build/m4/libcurl.m4A 0 build/m4/po.m4A 0 bu ildStatus against revision: 6me: ok,,you have added correctly,now comit
12:51 PM Abhishek: okay...done Adding trunk/build
Adding trunk/build/m4Adding trunk/build/m4/ax_cflags_warn_all.m4Adding trunk/build/m4/libcurl.m4Adding trunk/build/m4/po.m4Adding trunk/build/m4/sdl.m4Transmitting file data ....Committed revision 7.12:52 PM me: Wow,,...
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
7 of 13 06/29/2010 11:15
-
8/9/2019 Google Code Tutorial via Chat
8/13
this is simply great12:53 PM see,,, you are committing the files and folders inside trunk,,Abhishek: hmm..got it... and, if I want to release a software, then?me: trunk is used for development purpose,,
12:54 PM after making sufficient revision, you can branch out the codethat is why the branch folder existyou need to make a new directory into branch folder
12:55 PM mkdir branches/v0.001Abhishek: okay...me: now,, let support you are at revision 567 in trunk
12:56 PM Abhishek: hmm...me: now you can use copy command to transfer the CURRENT code from
trunk code to branch folderAbhishek: okay...me: BUT remember you should not use copy command of linuxyou need to use svn copy command
12:57 PM you can read tutorial also , how to make branch using svnlet me search
Abhishek: okay..thanks buddy;)
me: Let try out now,,12:58 PM Hope you are now getting bore !! or late
?Let try out now,, Hope you are now getting bore !! or late
Abhishek: nothing...We can try:)me: so,, send me "pwd"Abhishek: /media/Disk 3/BoomingBang/codenamei/imperius/trunk
12:59 PM me: apply cd ..it means go back one directory uop
Abhishek: i know;) okay, what now, please?1:00 PM me: no no ,, send me output of pwd now,,,Abhishek: /media/Disk 3/BoomingBang/codenamei/imperiusme: ok,, great,,now apply this command
1:01 PM svn copy trunk branches/v0.1Abhishek: A branches/v0.1me: apply "svn st" now,,send me output
Abhishek: A + branches/v0.11:02 PM me: wow,,, it means you have added a new branch,,,
now comit ityou know how to comit
1:03 PM and send me the output
Abhishek: yes..done...Adding branches/v0.1Adding branches/v0.1/buildAdding branches/v0.1/test.cpp
Committed revision 8.me: just check the url
http://code.google.com/p/imperius/source/browse/#svn/branchesnow,, it is showing your branch
1:04 PM Abhishek: yes
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
8 of 13 06/29/2010 11:15
-
8/9/2019 Google Code Tutorial via Chat
9/13
me: Ok,,1:05 PM now suppose your friend want v0.1 version
how you will send him??1:06 PM Abhishek: erm...update it?me: Nope ..... In such case you need to send him the readonly mode
source checkout urlopen a new terminal
with another locationfresh location may be home folder
1:07 PM Abhishek: okayme: send me pwdAbhishek: /home/abhishek/me: ok,,now apply this commandsvn checkout http://imperius.googlecode.com/svn/branches/v0.1
1:08 PM Abhishek: A v0.1/buildA v0.1/build/m4A v0.1/build/m4/sdl.m4A v0.1/build/m4/ax_cflags_warn_all.m4
A v0.1/bu ild/m4/libcurl.m4A v0.1/build/m4/po.m4A v0.1/test.cppA v0.1/configureU v0.1Checked out revision 8.Whats this?me: You have checkout the branch v0.1you can checkhome folderthere will be new directorycalled v0.1
1:09 PM Abhishek: yeah..there is:)me: we have done a small mistake while creating our branchAbhishek: what mistake?
1:10 PM me: we would have applied this command --- "svn copy trunkbranches/imperius-v0.1
if you would have applied this commandour branch name would be "imperius-v0.1"
1:11 PM Abhishek: hmm...right
me: and new folder created in your friend's directory will be namedas "imperius-v0.1" and not "v0.1"
it was my mistake...Abhishek: hey..don't worry..we are just practicing.1:12 PM me: using this you can send new branch to your friends to downloadAbhishek: okay...great:)me: Do you know why branch;s are needed ??
1:13 PM Abhishek: erm..not sure...But for releases?me: Yes,, release can be one advantage,, butLet suppose we are a team of 100 developers
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
9 of 13 06/29/2010 11:15
-
8/9/2019 Google Code Tutorial via Chat
10/13
1:14 PM Abhishek: okayme: and if everybody work in trunk, It will get many problem;s
because not everybody work on same featureAbhishek: hmm...
1:15 PM me: may be if 2 developer want to work on special featurewhich you do not want to be part of trunk now ,,
Abhishek: I can put it in branch...?
me: then you can branch out the code to new unstable branch and thenjust use branch
In my company ,, I am working on separate branch ,,1:16 PM of main project,,
after a month, we use to merge chnages,,Abhishek: got it:)me: You have just committed some code in main trunkAbhishek: yes...
1:17 PM me: using same procude you can now comit in branch toocd branches/v0.1
Abhishek: got it:) thankme: and then start editing code and comit it,,
Abhishek: what is Tags?me: Well I have not used tage much,, but let me try to explain it,,
1:18 PM Abhishek: okay...1:19 PM me: Let assume you are working in trunk code
and everyday you will modify the code1:20 PM you want use to try it,,,Abhishek: hmm...me: but by this way they will execute the current trunk codewhich may be unstalbe
Abhishek: yeah...1:21 PM me: so,, during the time of developemt you felt like this canbe good tryout demo,,
then you can put the tag "stable"1:22 PM now you have a "stable" tag into tag folder
now you can give link to stable code as1:23 PM svn checkout http://imperius.googlecode.com/svn/tags/stableAbhishek: hmm..got itme: now user will download stable code that that momentAbhishek: okay...me: now you can add new code to main trunkthis will not go to "stable" folder
1:24 PM after some time when you feel, that you are ready to make anew stable point, just move the "stable" tag
to current oneAbhishek: okay...1:25 PM me: "tags" demote the stage of code at perticular instance of time
it is almost similar to "branches"Abhishek: hmm...now our team can upload our work;)
1:26 PM me: but in branch you can comit but in "tags" you cannot comit(in my knowledge)Abhishek: okay
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
0 of 13 06/29/2010 11:15
-
8/9/2019 Google Code Tutorial via Chat
11/13
me: Have you go the idea of a ll these thingAbhishek: yeah..I got it:) thanks
1:27 PM me: See Google code hosting also provide Bug Tackerdo you about it ??
Abhishek: I d idn't know...me: click it,, http://code.google.com/p/imperius/issues/list you will
see the issue/bugs
Abhishek: oh...right:) thanks1:28 PM me: currently there are not bug there,,
when user will see any bug , they will file bug here1:29 PM anyone can enter new bug hereAbhishek: hmm...me: developer will get to know about bugs and they can assign bug to
other developer1:30 PM after fixing bug they can close the bug....Abhishek: Wow! This is far better than I thought.me: see this project -- you can see bugs
http://code.google.com/p/svg-edit/issues/listAbhishek: okay...
1:31 PM there are loads:)me: this bug tracker need to track,, new feature requests and new
defects in codeIt is recommended that always make checkin (svn ci) against bug
1:32 PM it means , whenever you want to added anything new to code,,first create bug and then make changes in code
comit the changes ,,1:33 PM while committing source code,, you mention which bug you are solving,,Abhishek: Okay...cool
me: and after committing it , just close the buglet me send you sample
Abhishek: okay...1:34 PM me: http://code.google.com/p/svg-edit/source/detail?r=895
click itthis revision is made against bug 289
Abhishek: yeah...excellent.1:35 PM me: you can see the url to bug also,,
while making log file you need to make a url to issuejust write as,,Fixing Issue 289 by soso changes
1:36 PM this will automatically make link to issue/bug 289Abhishek: Okay...its pretty good:)
1:37 PM me: You can setup developer mailing list tooAbhishek: using google groups?me: and set some setting so that all changes will goes to developer listby this you can track who is check-in-ing (svn ci) whatyup,,,
1:38 PM Abhishek: okay..cool:)me: this is not needed for small project,,where developer are less then 1-2Abhishek: we have 21 developers:)
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
1 of 13 06/29/2010 11:15
-
8/9/2019 Google Code Tutorial via Chat
12/13
me: wow,,How 21 developer made this code
1:39 PM your age is 14,, are other developer are same age group,,Abhishek: pretty nasty...and I was angered...we mailed it to each
other ...None of us knew about google code or same...Yup! all are 17or less1:40 PM me: wow,, I will love to meet you guys,, you are future of
india,, are you all in jaipur??Abhishek: Hehe...four of us are from india...rest, Russia, France,
UK, Bulgaria, Latvia,and ya de ya de ya!1:41 PM me: So,, you all would have used google code,, It have wiki too,,
you can make documentationtoofor code
Abhishek: Yeah..thats what I am thinking...you are doing any new dev?
1:42 PM me: I am doing a hell of activity ,, my prime goal is makefoss adaptation in india and develop Eduvid project1:43 PM Abhishek: whats Eduvid?
me: do you have any question regarding svnand google code
Abhishek: Nope..svn is clear..as well as google code...thanks toyou...we are a group..named FOSSFY stands forme: send me url --Abhishek: Free & Open Source Software For Youth (Foundation)me: wow,,
1:44 PM Abhishek: Okay... http://fossfy.co.cc --site's pretty new..wejust created it yesterday:) and http://phoenix-team.tk
me: have you joined LUG@IITD mailing lsit ??Abhishek: NONE of them are updated... yeah... I think so;)
1:45 PM me: http://groups.google.com/group/iitdlug/do join,,
Abhishek: okay, thanks..1:46 PM me: Do you really want to thanks,, ?? Do you what is the wayto thanks in Free Culture ??Abhishek: Contributing software?
1:47 PM me: If you get problem while learning something Or yousomething new knowledge , Always blog / write tutorial so that othercan work on it,,
write software is not a contribution]Abhishek: okay...me: see,, google has written google code hosting ,, but you was not
aware of this toolAbhishek: yeah.1:48 PM me: advocating good tools and software is more important then
writing software itself,,Abhishek: hmm...right
1:49 PM me: It will be good if you make a good tutorial on get startedwith google code,,, I wanted to do it,, but never get time for it,,,So I spent my time with you on chat,, so that now I will blog out
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
2 of 13 06/29/2010 11:15
-
8/9/2019 Google Code Tutorial via Chat
13/13
chat...This chat will be useful to new users who want to quick start on google code
1:50 PM Abhishek: Okay, cool :Dme: this is the reason I was asking pwd and other output time to timeAbhishek: right :)me: so that other user can read this chat as tutorial, :)
-- Narendra Sisodiya ( )
Web : http://narendra.techfandu.org Twitter : http://tinyurl.com/dz7e4a
GLUG Meerut | Google Groups http://groups.google.com/group/glug-meerut/msg
3 of 13 06/29/2010 11:15