From d0fe2188f348258d741fd401e6a63a23c9a1e9c0 Mon Sep 17 00:00:00 2001 From: Kiran Isukapatla Date: Tue, 21 Feb 2012 11:36:50 +0530 Subject: Corrections in Assessment questions and minor changes. --- Version_Control/vcs4/vcs4.rst | 137 ++++++++++++++++++++---------------------- 1 file changed, 66 insertions(+), 71 deletions(-) (limited to 'Version_Control') diff --git a/Version_Control/vcs4/vcs4.rst b/Version_Control/vcs4/vcs4.rst index 3da2901..b5da2c1 100644 --- a/Version_Control/vcs4/vcs4.rst +++ b/Version_Control/vcs4/vcs4.rst @@ -6,12 +6,12 @@ Version Control using Hg Part 4 .. Prerequisites .. ------------- -.. Version Control using Hg Part 1, 2, 3 +.. Version Control using Hg, Part 1, 2, 3 .. Author : Primal Pappachan - Internal Reviewer : - Date: Jan 27, 2012 + Internal Reviewer : Kiran Isukapatla + Date: Feb 20, 2012 ====== Script @@ -24,7 +24,7 @@ with the logo of MHRD}}}* .. R1 -Hello friends and welcome to the fourth part of tutorial on 'Version Control wit +Hello friends and welcome to the fourth part of tutorial on 'Version Control with hg'. .. L2 @@ -33,7 +33,7 @@ Hello friends and welcome to the fourth part of tutorial on 'Version Control wit .. R2 Please make sure that you have gone through the following tutorials before you -continue on this tutorial +continue on this tutorial. .. L3 @@ -44,7 +44,7 @@ continue on this tutorial At the end of this tutorial you will be able to #. Clone existing repositories #. Share your repositories with peers - #. use version control for collaborating with your peers + #. use 'version control' for collaborating with your peers .. L4 @@ -54,28 +54,26 @@ At the end of this tutorial you will be able to When motivating the use of version control systems, we spoke a lot about collaboration and sharing our changes with our peers. Let us now see how we can -share our project with our peers and collaborate with them. +share a project with our peers and collaborate with them. -For this purpose let us create a central repository, a copy of our repository, -which is different from the one in which we are working. The clone command is +For this purpose, let us create a 'central repository' and a copy of 'our repository', +which is different from the one in which we are working. The 'clone' command is used to clone or replicate an existing repository. .. L5 -``$hg clone SOURCE [DEST]`` - ``$ hg clone book book-repo`` .. R5 -The syntax of the clone command is -- hg clone SOURCE [DEST], where the -optional argument DEST is being represented in brackets. The clone command can +The syntax of the 'clone' command is -- hg clone SOURCE [DEST], where DEST is an + optional argument, represented in brackets. The 'clone' command can be used to replicate already existing repositories, either on your own machine -or on some remote machine somewhere on the network. Since, hg maintains a copy +or on a remote machine. Since, hg maintains a copy of the full repository with every copy of the repository, the two copies that we have are exactly equivalent. -In this example book-repo shall be our central repository we are sharing with +In this example 'book-repo' shall be our central repository being shared with peers. .. L6 @@ -84,20 +82,19 @@ peers. .. R6 -A mercurial repository can be shared in multiple ways. We shall use the http -protocol to share the repository. Mercurial comes inbuilt with a tiny server +A mercurial repository can be shared in multiple ways. Mercurial comes inbuilt with a tiny server that can be used to share your repository over the network. To start sharing -the repository, we say +the repository, we go to the repository and say 'hg serve'. .. L7 -``$cd ../book-repo`` +``$cd book-repo`` ``$hg serve`` .. R7 -This will start serving the repository on the network on the port 8000. Anybody +This will start serving the repository on the network on the port 8000. .. L8 @@ -105,7 +102,7 @@ Open the url http://localhost:8000 in browser. .. R8 -Now if your friend John wishes to clone the repository, use +Now if your friend 'John' wishes to clone the repository, he uses: .. L9 @@ -114,10 +111,10 @@ Now if your friend John wishes to clone the repository, use .. R9 -By this process, we share a central repository; work on our local copies. It +By this process, we share a central repository and work on our local copies. It doesn't make much sense to allow anybody to make changes to a public -repository, by default. We will need to make changes to the settings of the -repository to allow this. To set the write permissions, add the following lines +repository by default. To allow this, we need to make few changes to the settings of the +repository. To set the write permissions, we add the following lines in .hg/hgrc .. L10 @@ -130,8 +127,8 @@ in .hg/hgrc .. R10 -This will allow anybody to push to the repository, now. John can now push and -his changes will appear in the central repository. +This will allow anybody to push to the repository. Now, John can push +his changes which will then appear in the central repository. .. L11 @@ -140,8 +137,8 @@ his changes will appear in the central repository. .. R11 -Use hg push to push your commits (changesets) to the central repository. The -changes made by Primal will appear in the central repository. +Use 'hg push' to push your commits (changesets) to the central repository. The +changes made by John will appear in the central repository. .. L12 @@ -157,9 +154,9 @@ Let's now see how to get the changes from central repository. .. R13 -Before pulling the changes, we can use the command hg incoming to see the -changes that have been made to the repository after our last pull and the -changesets that will be coming into our repository after we do a pull. +Before pulling the changes, we may use the command 'hg incoming'. This shows the +changes that have been made to the repository, after our last pull and the +changesets that will be coming into our repository, after we do a pull. .. L14 @@ -167,7 +164,7 @@ changesets that will be coming into our repository after we do a pull. .. R14 -If you wish pull those changes shown by hg incoming, we use the pull command. +If you wish to pull those changes shown by 'hg incoming', we use the 'hg pull' command. .. L15 @@ -176,7 +173,7 @@ If you wish pull those changes shown by hg incoming, we use the pull command. .. R15 These changes do not affect our working directory. To see this, we could use -the hg parent command. +the 'hg parent' command. .. L16 @@ -184,8 +181,8 @@ the hg parent command. .. R16 -As pulling in the changes, the parent will still be the last commit, and the -changes are still not in your working directory. +After pulling the changes, the parent will still be the last commit, and the +changes are still not in the working directory. .. L17 @@ -193,7 +190,7 @@ changes are still not in your working directory. .. R17 -To get these changes we do the update as suggested by hg. +To get these changes, we do the update as suggested by hg. .. L18 @@ -201,11 +198,11 @@ To get these changes we do the update as suggested by hg. .. R18 -The update command updates the parent to the latest changes that we +The update command updates the parent to the latest changes that we have just pulled from the remote repository. #. Updates to the tip if no revision is specified - #. tip is the most recently added changeset + #. Tip is the most recently added changeset #. Can specify revision number to update to You can try @@ -216,7 +213,7 @@ You can try .. R19 -hg tip shows the tip of the repository +'hg tip' shows the tip of the repository .. L20 @@ -224,8 +221,8 @@ hg tip shows the tip of the repository .. R20 -What happens when two users have made simultaneous changes to the same file, -by editing different parts at the same time. +Let see what happens when two users make simultaneous changes to the same file, +by editing different (or) same parts of the file. .. L21 @@ -236,12 +233,11 @@ by editing different parts at the same time. With simultaneous changes, following things happen #. The logs of both repositories will be different #. The repositories have diverged - #. hg push fails, in such a scenario - + #. 'hg push' fails, in such a scenario Don't take the advice given by mercurial. Using the -f would be disastrous. We -will leave out a discussion of that, for this course. +will leave out a discussion on that, for this course. .. L22 @@ -262,7 +258,7 @@ use following commands in order .. R24 We have now pulled the changes from the central repository and merged them with -the changes in our repository. As hg warns u, do not forget to commit. +the changes in our repository. As hg warns you, do not forget to commit. .. L25 @@ -270,8 +266,8 @@ the changes in our repository. As hg warns u, do not forget to commit. .. R25 -The changes can be pushed to the central repository now. We could also check -the changes that will be pushed, before pushing them, using the hg outgoing +Now, the changes can be pushed to the central repository. We could also check +the changes before pushing them, using the 'hg outgoing' command. .. L26 @@ -286,17 +282,17 @@ command. .. R26 -The changes have now been successfully pushed! Let us look at the web interface -of the repo, to see that the changes have actually taken place. +The changes have now been successfully pushed! Let us look at the 'web interface' +of the repository, to see that the changes have actually taken place. .. L27 -Show the Change graph in browser. +Show the 'Change graph' in the browser. .. R27 -What will happen if we edited the same portion of the file, at the same time? -How would merges work? This will be the last thing that we are going to see in +What will happen if we edit the same portion of the file, at the same time? +How would merge work? This will be the last thing that we are going to see in this part of the spoken tutorial. .. L28 @@ -331,7 +327,7 @@ conflicts occur. If you get a 3 pane view, the first pane is the actual file, where you make changes, to resolve the conflicts. The second pane shows the changes that you made, to the file. The last pane shows the changes that you pulled from the -original repo. Once you are satisfied with the changes, save and quit. +original repository. Once you are satisfied with the changes, save and quit. Once you are done, you need to tell mercurial that you have resolved the conflicts manually. @@ -342,7 +338,7 @@ conflicts manually. .. R30 -You will now need to commit your changes, just like the simple merge that we per +You will now need to commit your changes, just like the simple merge. .. L31 @@ -383,14 +379,14 @@ organize your work and projects, better. In this tutorial, we have learnt to, -#. Clone repositories, using hg clone, -#. Serve our repositories via http using hg serve, -#. push changes to a repository using hg push, -#. check the changesets in a repository after last pull, using hg incoming, -#. pull changes from a repository using hg pull , -#. update the working directory, using hg update, -#. merge two heads, using hg merge, -#. and resolve conflicts using hg resolve. +#. Clone repositories, using 'hg clone', +#. Serve our repositories via http using 'hg serve', +#. push changes to a repository using 'hg push', +#. check the changesets in a repository after last pull, using 'hg incoming', +#. pull changes from a repository using 'hg pull' , +#. update the working directory, using 'hg update', +#. merge two heads, using 'hg merge', +#. and resolve conflicts using 'hg resolve'. .. L36 @@ -399,8 +395,11 @@ In this tutorial, we have learnt to, .. R36 Here are some self assessment questions for you to solve - #. Mention the easiest way to get started on sharing your repository by providi - #. Suppose Joey and Melissa have made simultaneous changes to the same file in + #. Mention the easiest way to get started on sharing your repository by + providing a web interface. + #. Suppose Melissa made some changes to files in the central repository. Would + Joey's local repository be automatically updated with these changes after he + has executed 'hg pull' command? #. What are the commands involved in the process of merging changes? .. L37 @@ -412,7 +411,8 @@ Here are some self assessment questions for you to solve And the answers, #. hg serve - #. No, whenever we've done a merge, hg parents will display two parents until w + #. No, Joey has to execute 'hg update' to apply the pulled + changes to his repository. #. hg pull, hg merge, hg commit -m "Merged Remote changes" .. L38 @@ -436,11 +436,6 @@ you are comfortable with using Mercurial on a day-to-day basis. .. R39 -Hope you have enjoyed this tutorial and found it useful. Feel free to play -around with Mercurial and read the documentation given by hg help command. When -you are ready to move on, please proceed to the third tutorial on 'Version -Control using Hg' +Hope you have enjoyed this tutorial and found it useful. Thank you! - - -- cgit From e78a6cba6e38a07dbe5a307b65f84737d4235491 Mon Sep 17 00:00:00 2001 From: Kiran Isukapatla Date: Tue, 21 Feb 2012 12:19:53 +0530 Subject: Few modificatons and minor changes to content. --- Version_Control/vcs3/vcs3.rst | 115 +++++++++++++++++++++--------------------- 1 file changed, 57 insertions(+), 58 deletions(-) (limited to 'Version_Control') diff --git a/Version_Control/vcs3/vcs3.rst b/Version_Control/vcs3/vcs3.rst index 3913dc9..cd659ec 100644 --- a/Version_Control/vcs3/vcs3.rst +++ b/Version_Control/vcs3/vcs3.rst @@ -1,6 +1,6 @@ --------------------------------- -Version Control using Hg Part 3 +Version Control using Hg - Part 3 --------------------------------- .. Prerequisites @@ -9,8 +9,8 @@ Version Control using Hg Part 3 .. Version Control with hg - Part 1,2 .. Author : Primal Pappachan - Internal Reviewer : - Date: Jan 27, 2012 + Internal Reviewer : Kiran Isukapatla + Date: Feb 21, 2012 -------- @@ -19,12 +19,12 @@ Script .. L1 -*{{{ Show the first slide containing title, name of the production team along +*{{{ Show the first slide containing the title, name of the production team along with the logo of MHRD}}}* .. R1 -Hello friends and welcome to the tutorial on 'Version Control with Hg' +Hello friends and welcome to the third part of the tutorial on 'Version Control with Hg' .. L2 @@ -33,7 +33,7 @@ Hello friends and welcome to the tutorial on 'Version Control with Hg' .. R2 Please make sure that you have gone through the following tutorials before you -continue on this tutorial +continue on this tutorial. .. L3 @@ -43,9 +43,9 @@ continue on this tutorial At the end of this tutorial you will be able to -1. Learn how to view and revert changes made to files in a repository. +1. Learn how to 'view' and 'revert' changes made to files in a repository. -#. Learn how to share repositories and deal with simultaneous conflicting change +#. Learn how to 'share' repositories and deal with 'simultaneous conflicting change'. .. L4 @@ -53,7 +53,7 @@ At the end of this tutorial you will be able to .. R4 -Let's first try to find out why we should commit inspite of the additional +Let's first try to find out why we should commit, inspite of the additional operational costs and loss of time? .. L4 @@ -62,9 +62,9 @@ operational costs and loss of time? .. R4 -While you were wondering, let's say your friend walks in and together you make -a lot of changes. 1. You replace all the occurrences of & in chapter1.txt with -and. 2. You delete the chapter3.txt file. +While you were wondering, let's say your friend walks in, and together you make +a lot of changes. 1. You replace all the occurrences of '&' in 'chapter1.txt' with +'and'. 2. You delete the 'chapter3.txt' file. .. L5 @@ -78,17 +78,17 @@ and. 2. You delete the chapter3.txt file. .. R6 -But after a while, you realize that these changes are unwarranted. You want to -go back to the previous state, undoing all the changes that you made, after -your friend arrived. +But after a while, you realize that these changes are 'unwarranted'. You want to +go back to the previous state, undoing all the changes that were made after +your friend's arrival. -The undo in your editor may allow undoing some changes(if you haven't closed it -after making the changes) but there's no way of getting back deleted files -using your editor. That's where mercurial comes to the rescue. +The 'undo' in your editor may allow undoing some changes. However +there is no way of getting back deleted files using this feature. +This is where 'Mercurial' comes to the rescue. -We shall use the revert command of hg to undo all the changes after the last -commit. If we want to undo all the changes, we use the revert command with the ---all argument, else use revert command with specific filename as argument. +We shall use the 'revert' command of hg to undo all the changes after the last +commit. We use the revert command with the '--all' argument for undoing +all changes, else use revert command with 'specific filename' as argument. .. L5 @@ -108,14 +108,14 @@ commit. If we want to undo all the changes, we use the revert command with the .. R5 -After running this command, you can see that all deleted files have been -restored. But hg has generated new files with .orig extension. Mercurial -actually doesn't like to delete any of the changes that you have made. So, it -makes a back-up of the already existing files in the present state and gives -you back the old file. +After running this command, you can see that all the deleted files have been +restored. However, hg has generated new files with '.orig' extension. Mercurial +actually doesn't like to delete any of the changes that you've made. So, it +makes a backup of the already existing files in the present state and gives +you the old file. -If we now decide, that we want to redo the changes that we had done to the -existing file, we can just overwrite it with the backed up file. +If we now decide that we want to redo the changes that we had done to the +existing file, we can overwrite it with the backed up file. .. L6 @@ -131,9 +131,9 @@ existing file, we can just overwrite it with the backed up file. .. R6 -Let's say we now want to commit these changes, but we are not sure of all the -changes that we have made to the file, since it's been a while after we made -the changes. We could use the diff command to see all the changes that have +Now, let's say we want to commit all the changes. We are not sure of all the +changes done, since it's been a while after we made the changes. +We could use the 'diff' command to see all the changes that have been made in the file. .. L8 @@ -142,13 +142,13 @@ been made in the file. .. R7 -You see some cryptic output, but it's essentially giving you the list of -changes made to the file. All the lines that were deleted are preceded by a - -and all the new-lines are preceded by a +. You can see that the & occurrences -have been replaces with and. +You see some 'cryptic' output, but it's essentially giving you the list of +changes made to the file. All the lines that were deleted are preceded by 'a -' +and all the new lines are preceded by 'a +'. You can see that the '&' occurrences +have been replaced with 'and'. -We should note here that, the diff wouldn't make much sense, if we had some -binary files like .jpg or .pdf files. We would see some gibberish in the +We should note that, the 'diff' wouldn't make much sense, if we had some +binary files like '.jpg' or '.pdf' files. We would see some gibberish in the output. Let's now commit this change. .. L9 @@ -159,7 +159,7 @@ output. Let's now commit this change. .. R8 -We can pass an additional argument, -v or --verbose, to hg log to get the whole +We can pass an additional argument, '-v' or 'verbose', to 'hg log' to get the whole commit message, instead of just the summary. .. L10 @@ -168,7 +168,7 @@ commit message, instead of just the summary. .. R9 -Also, we are not always, interested to see the whole history of the project. It +Also, we may not always want to see the whole history of the project. It would often suffice to see the last few commits. .. L11 @@ -177,8 +177,8 @@ would often suffice to see the last few commits. .. R10 -To limit the output of hg log, we could use the -l or --limit argument. Now it -will print only last three commits. +To limit the output of hg log, we could use the '-l' or 'limit argument'. Now '-l3' +will print only the last three commits. .. L12 @@ -187,10 +187,10 @@ will print only last three commits. .. R11 Often, the level of detail provided by the commit messages is also not enough. -We would want to see what exactly changed with a commit, probably as a diff. We -could do that using revision numbers. +We may want to see what exactly changed with a commit, probably as a 'diff'. We +could do that using 'revision numbers'. -Use the log command to get a brief description of all the changes made, by +Use the 'log' command to get a brief description of all the changes made, by showing us the summary line of all the commits. Look at the changeset line in the output of the command. It shows a number followed by a semi-colon and some long hexa-decimal string. The number is called the revision number. It is an @@ -204,9 +204,9 @@ the revision number, if required. .. R12 -The revision number can also be passed as an argument to many commands. Let's -say we wish to see the changes between revision 1 and revision 2. We shall use -the diff command to do this. +The 'revision number' can also be passed as an argument to many commands. Let's +say we wish to see the changes between 'revision 1' and 'revision 2'. We shall use +the 'diff' command to do this. .. L14 @@ -214,7 +214,7 @@ the diff command to do this. .. R13 -The diff command takes two revision numbers as arguments and gives the changes +The 'diff' command takes two revision numbers as arguments and gives the changes made from revision in the first argument to revision in the second argument. .. R14 @@ -246,8 +246,7 @@ To see changes made to a particular file, in the speciifed range of commits, .. R17 -This brings us to the end of the tutorial. In this tutorial, we have -seen, +This brings us to the end of the tutorial. .. L18 @@ -256,9 +255,9 @@ seen, .. R18 In this tutorial, we have learnt to, - #. Undo changes to the repository using hg revert, - #. View changes done to the repository using hg diff - #. Use revision numbers as arguments to different hg commands + #. Undo changes to the repository using 'hg revert', + #. View changes done to the repository using 'hg diff', + #. Use 'revision numbers' as arguments to different 'hg commands'. .. L19 @@ -266,10 +265,10 @@ In this tutorial, we have learnt to, .. R19 -Here are some self assessment questions for you to solve +Here are some self assessment questions for you to solve: -#. How to accomplish not saving backup files using hg revert command? -#. Get the history of revisions 2 to 4 without having to list each revision? +#. How to you avoid saving 'backup files' while using 'hg revert' command? +#. How do we get the history of revisions 2 to 4 without having to list each revision? #. Print the description and content of a change. Hint: Use --patch option .. L20 @@ -293,8 +292,8 @@ And the answers, .. R21 Hope you have enjoyed this tutorial and found it useful. Feel free to play -around with Mercurial and read the documentation given by hg help command. When -you are ready to move on, please proceed to the third tutorial on 'Version +around with Mercurial and read the documentation given by 'hg help' command. When +you are ready to move on, please proceed to the fourth tutorial on 'Version Control using Hg' Thank you! -- cgit