You can get the most recent, up to date sources from a mirror of the VisIt subversion repository. This is not recommended for general use, but if you are doing VisIt development or have been asked to test a release branch, this page contains the information you need.
The base URI is http://visit.ilight.com/svn/visit/.
Thus, to grab the source code directory from trunk, use the command:
svn checkout http://visit.ilight.com/svn/visit/trunk/src visit-trunk-src
And to grab all directories from the trunk (source, testing, data files, etc), use the command:
svn checkout http://visit.ilight.com/svn/visit/trunk visit-trunk
This will download the most recent copy of VisIt's trunk and put it in a directory named visit-trunk.
NOTE: There are some reports that http:// may not always work; you might try https:// if you run into problems.
Checkout Never Gets Started (behind a proxy server)
If your svn command goes on for minutes (or longer) without ever starting, then the command is hung and you are probably behind a proxy server. Here's how to get around this:
- Edit ~/.subversion/servers
- Replace the commented out http-proxy-exceptions and http-proxy-port fields:
- http-proxy-exceptions = visit.ilight.com
- http-proxy-port = 8080
We figured this out with the help of this page.
Long or Stalled Checkouts
Some configurations, notably the kernel revision + settings shipped with RHEL4 on various architectures, have default settings which can cause exceedingly long checkout times or full stalls to http-based subversion repositories. For reference, a 'normal' checkout time is on the order of 5 minutes.
If the checkout appears hung, it is usually possible to get it to complete: simply cancel the checkout when it hangs, and type "svn up" in the checkout directory; it can determine what has been checked out already, and will pick up where it left off. You may need to do this step multiple times.
However, there is a known workaround for this issue: Add the following to /etc/sysctl.conf and either run "/sbin/sysctl -p /etc/sysctl.conf" or just reboot -- the change will be permanent.
# network performance tuning net.core.rmem_default = 256960 net.core.rmem_max = 256960 net.core.wmem_default = 256960 net.core.wmem_max = 256960 net.ipv4.tcp_timestamps = 0 net.ipv4.tcp_sack = 1 net.ipv4.tcp_window_scaling = 1
This may also fix other network related issues, like downloads in a web browser hanging.
(Jim Trater at ORNL provided this fix.)
The aforementioned subversion repository is a mirror of VisIt's actual subversion repository. As such, it is not updated in real time. But it should never be more than 15 minutes behind the main repository; if you find this to be the case, please send a ping to the visit-users or visit-developers mailing lists, and a member of the VisIt team will ping NERSC about the issue.
As the repository is a mirror, no commits can be made to it. If you have changed something in VisIt which you'd like to make available to the wider community (including the next release of VisIt), use:
svn update # ensure local tree is up to date svn diff > fix-for-something.patch
and then attach the file fix-for-something.patch to an email sent to the visit-developers mailing list. If you're on windows, TortoiseSVN has a 'Create patch' option which does essentially the same thing.
Since the repository speaks plain old http, it is browsable with a standard web browser. If you are referring to specific code segments in, say, a visit-developers email, it is polite to provide a link to the file in question via the web interface.