Difference between revisions of "Code repositories"

From MCEWiki
 
(25 intermediate revisions by 6 users not shown)
Line 1: Line 1:
= Repository and check-out =
+
The MCE software is available on GitHub in several repositories:
  
Currently, the MAS repository is on e-mode, and should be accessible from anywhere on the internet.  The svn server is cmbr.phas.ubc.ca .
+
:<span style="font-size:large">https://github.com/multi-channel-electronics</span>
  
There are separate repositories for core MAS (driver + libraries + command line applications) and user applications (squid tuning, file management scripts, idl scripts).
+
The most common things you'll need are:
 +
* the [[MAS]] code here: https://github.com/multi-channel-electronics/mas
 +
** MAS uses the GNU autotools for a bit of configuration work.
 +
* the [[MCE script]]s here: https://github.com/multi-channel-electronics/mce_script
 +
See [[MAS OS setup]] for information on how to build and install these packages.
  
Core MAS repository is called "mas".
+
Also available:
 +
* [[Sync box firmware]]: https://github.com/multi-channel-electronics/sync_box
 +
** both CPLD and Atmel code are available
 +
* [[PCI card firmware]]: https://github.com/multi-channel-electronics/arc_pci
  
User MAS repository is called "mce_script".  This has 3 parts:
+
== What about card firmware? ==
  
{| border=1
+
That's still in a CVS respository somewhere at UBC. Ask us for it.
! Folder !! Purpose
 
|-
 
| script || shell scripts, wrappers for mce_cmd and dsp_cmd
 
|-
 
| idl_pro || idl scripts
 
|-
 
| src    || compilable code projects
 
|}
 
  
The main branch is called "trunk".  This means that to check out the main-line scripts folder, use the svn command
+
[[Category:MAS]]
 
+
[[Category:MCE Script]]
svn checkout --username <user> --password <pass> svn://cmbr.phas.ubc.ca/mce_script/trunk/script <destination folder>
+
[[Category:Sync Box Firmware]]
 
 
To checkout the entire mas source tree (trunk + branches)
 
svn checkout svn://localhost/mas
 
 
 
 
 
Sometimes, you may want to tunnel the SVN port.  This isn't necessary now that the server is on e-mode, but in any case it's done like this:
 
 
 
ssh mhasse@phas.ubc.ca -N -L 3690:cmbr.phas.ubc.ca:3690
 
 
 
You can replace "mhasse@phas.ubc.ca" with your username@any machine behind the physics firewall that you have access to.  This command will ask for your password, and then remain open.  As long as this command is running, you can do svn operations using the address "svn://localhost/..." and they will be redirected to cmbr.
 
 
 
 
 
= Branching and merging =
 
 
 
Merging is accomplished by telling svn to apply a change history from one branch into the current location.  For example, if we want branched from trunk/target at r100 and want to merge all changes in trunk/target up to the current head version into branches/expt/target, the merge command would be:
 
 
 
cd branches/expt/target
 
svn merge -r100:HEAD ../../../trunk/target
 
 
 
= Release versions =
 

Latest revision as of 19:21, 16 November 2021

The MCE software is available on GitHub in several repositories:

https://github.com/multi-channel-electronics

The most common things you'll need are:

See MAS OS setup for information on how to build and install these packages.

Also available:

What about card firmware?

That's still in a CVS respository somewhere at UBC. Ask us for it.