Changes between Version 47 and Version 48 of SourceCodeGit
- Timestamp:
- Jan 14, 2015, 10:07:36 AM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
SourceCodeGit
v47 v48 3 3 = BOINC source code = 4 4 5 == Getting a copy of the BOINC source == 6 7 The BOINC source is stored in a [http://www.git-scm.com Git] repository. 5 You can download the BOINC source code as a compressed archive from here: 6 https://github.com/BOINC/boinc-v2/releases 7 8 You can browse the BOINC source code using [/browser a web-based interface] 9 ([http://boinc.berkeley.edu/gitweb/ alternative]). 10 This is useful for getting individual files or viewing the revision history. 11 12 == Getting the code via Git == 13 14 The BOINC source code is stored in a [http://www.git-scm.com Git] repository. 8 15 To clone the repository into a directory called (for example) 'boinc', run: 9 16 … … 43 50 }}} 44 51 45 46 52 === Staying Current === 47 53 48 The local git repository which you created when you cloned the remote repository has a complete snapshot of development at the time it was cloned. 54 The local git repository which you created when you cloned the remote repository 55 has a complete snapshot of development at the time it was cloned. 49 56 You can use this to build the BOINC software, and you can even make local changes to your local copy. 50 Meanwhile the BOINC developers will be making changes to the remote repository as they continue working on the software. 51 To see what changes have been made there since you cloned the repository you must first "fetch" the changes from that repository. 52 These will go into a branch called "origin/master", which is not the current working branch of your repository (which by default will be the "master" branch). 57 Meanwhile the BOINC developers will be making changes to the remote repository 58 as they continue working on the software. 59 To see what changes have been made there since you cloned the repository 60 you must first "fetch" the changes from that repository. 61 These will go into a branch called "origin/master", 62 which is not the current working branch of your repository (which by default will be the "master" branch). 53 63 So to compare your local copy with the remote, follow this example: 54 64 {{{ … … 73 83 }}} 74 84 The "--name-status" flag causes only the name and status of differing files to be displayed. 75 The "master..origin/master" specification causes the difference to be displayed between your local repository (the "master" branch) and the remote repository (as fetched onto the local "origin/master" branch). 85 The "master..origin/master" specification causes the difference to be displayed between your local repository 86 (the "master" branch) and the remote repository (as fetched onto the local "origin/master" branch). 76 87 77 88 If you wish to update your local branch to match the remote repository then simply use the git "pull" command, … … 98 109 15 files changed, 332 insertions(+), 272 deletions(-) 99 110 }}} 100 You could also use the "git merge" command, which would merge the changes from your local copy of the "origin/master" branch into your local "master" branch. 111 You could also use the "git merge" command, 112 which would merge the changes from your local copy of the "origin/master" branch into your local "master" branch. 101 113 The "git pull" command is shorthand for "git fetch" followed immediately by "git merge". 102 114 103 104 == Installing Git == 115 === Installing Git === 105 116 106 117 To access the BOINC Git repository you'll need the Git client software: … … 117 128 [http://gitx.laullon.com GitX] ([https://github.com/laullon/gitx latest]) 118 129 119 To get a copy of the BOINC source code you don't need to fully understand Git, you can just skim the instructions below. 130 To get a copy of the BOINC source code you don't need to fully understand Git; 131 just skim the instructions below. 120 132 However, if you intend to modify BOINC or to look at branches, you'll need to know at least the basics. 121 133 … … 125 137 * [http://git-scm.com/book Pro Git]: Great free online book (also commercially available in print!) 126 138 * [http://git-scm.com/doc All the rest]: Cheat sheets, tutorials and more videos 127 128 == Browsing source code on the web ==129 130 You can browse the BOINC code using [/browser a web-based interface]131 ([http://boinc.berkeley.edu/gitweb/ alternative]).132 This is useful for getting individual files, or seeing the revision history.133 139 134 140 == Tags & Branches == … … 212 218 * 9220ceb - (3 days ago) Admin web: deprecate problem_host.php, which sends a confusing email to user - David Anderson 213 219 }}} 214 215 220 216 221 === Examples using tags and branches === … … 421 426 || '''zip''' || Compression functions; not used by BOINC, but may be useful for applications. || 422 427 423 A directory tree, with size indicating "number of code lines in file" and redness indicating "cyclomatic complexity of code (logarithmic scale)", as generated by "Scientific Toolworks Understand" shows a rather considerable fileset: 428 A directory tree, with size indicating "number of code lines in file" and redness indicating 429 "cyclomatic complexity of code (logarithmic scale)", 430 as generated by "Scientific Toolworks Understand": 424 431 425 432 [[Image(MetricsTreemap-CountLine-MaxCyclomatic.png)]] 433