The AOS / A2 repository has moved to https://svn.inf.ethz.ch/svn/lecturers/a2/.
Check your source URI with "svn info".
If necessary use "svn relocate".
Read anonymously such as this.
svn checkout https://svn.inf.ethz.ch/svn/lecturers/a2/trunk a2
If anonymous access fails try userid eth.a2guest and password a2guest. Please visit https://trac.inf.ethz.ch/trac/lecturers/a2 to learn more.
The platform offers two different source code repositories:
Note: Don't miss the 's' in "https"!
The password needed to read-access the AOS repository can be requested by mail to ocp _at_ inf.ethz.ch. If you would like to make use of the community repository, please send us the user name you like and ask for a password.
There is an unoffical mercurial mirror on Google code (maintained by Soren Renner):
You can also find A2 ISO images (serial trace enabled to COM1 with 112 KBaud), which are created sporadically from the Subversion repository, in the file download area of a project at sourceforge with the name A2-Oberon:
|/branches/||Subprojects that are not accessible to the public|
|/Obsolete/||Obsolete files that have been removed from the release|
|/Resources/||Resources that are not included in the release|
|/Resources/Images/||Various images, typically the original images used in the release incl. licensing informatin|
|/trunk/||The trunk is the main development branch where you find the most up-to-date sources.|
|/trunk/AosVM/||Script to generate A2 VMWare image|
|/trunk/source/||These are the sources/ressources used by both Native AOS and WinAOS|
|/trunk/tools/WinAosDebug/||Source code of WinAos debugger|
|/trunk/tools/WinMerge/||Oberon text plug-in for WinMerge. This enables WinMerge to ignore the formatting information in the Oberon files. See install.txt|
|/trunk/UnixAos/||UnixAOS specific files|
|/trunk/UnixAos/buildtools/||UnixAOS build tool files|
|/trunk/UnixAos/boot/||Makefiles for building the UnixAOS executable|
|/trunk/WinAos/||Everything withhin this folder/subfolders is WinAOS specific|
|/trunk/WinAos/ObjE/||Object files of external WinAOS version. See note below!|
|/trunk/WinAos/ObjI/||Object files of internal WinAOS version. See note below!|
|/trunk/WinAos/PELinker/||Files use by PELinker to link WinAos executable|
|/trunk/WinAos/WinOberon/||Files only used by the external WinAOS oberon application|
|/trunk/WinAos/Work/||WinAOS work directory. If you save a file without specifying a path, it will be stored into this folder.|
The repository contains a fully functional WinAOS system. To start it, just execute Aos.exe found in /trunk/WinAos/
All people that are interested in this repository have full read-write access to it.
Please note that this repository is shared among all users.
Suggestion: As a first step, create a personal folder (e.g. using your user name)
You can create a local copy (also known as "mirror") of any Subversion repository for offline access using the command files shown below. You will need a command-line Subversion client, particularily the svnadmin.exe and svnsync.exe programs (see links in the Client Software section). You must remember to treat the mirror repositories as read-only. If you commit to a mirror by accident, you won't be able to update it from the central ETHZ server, and you'll have to redownload it.
To create mirrors for the
ocp repositories, follow these steps:
d:\svn\mirrors(Note: if you want to use a different path, update the
Wait for the mirrors to be created and data downloaded, which will take some time:
aos repository upto revision 3692 is 717 Mb, and
ocp is 15 Mb at revision 364.
To update the local mirrors:
@echo off if %1 == "" goto :NoParam setlocal rem Put source and target URLs here, no trailing slashes. set SourceURL=https://www.ocp.inf.ethz.ch/svn set TargetURL=file:///d:/svn/Mirrors rem Create the new repository. mkdir %1 svnadmin create %1 rem Allow property changes (necessary for svnsync). echo exit 0 > %1\hooks\pre-revprop-change.bat rem Perform synchronization. svnsync init %TargetURL%/%1 %SourceURL%/%1 svnsync sync %TargetURL%/%1 rem Disable property changes. del %1\hooks\pre-revprop-change.bat goto :End :NoParam echo Usage: %~nx0 repoName echo repoName is the name of the folder/repository to mirror. echo (c) Alexander Iljin, 2010 :End endlocal
@echo off if "%1" == "" goto :NoParams setlocal rem Don't add trailing slashes to the URLs set TargetURL=file:///d:/svn/Mirrors rem Allow property changes (necessary for svnsync). echo exit 0 > %1\hooks\pre-revprop-change.bat rem Perform synchronization. svnsync sync %TargetURL%/%1 rem Disable property changes. del %1\hooks\pre-revprop-change.bat goto :End :NoParams echo Usage: %~nx0 repoName echo repoName - name of the folder/repository to update from the net. echo (c) Alexander Iljin, 2010 :End endlocal
@echo off echo Synchronizing all repositories in the current folder... for /d %%i in (*) do call SyncRevs.bat %%i echo Finished.
To update a repository, run the following command inside the repository:
git svn fetch
aosrepository is only 128 Mb at revision 3692 (contrast with 717 Mb of the Subversion mirror)
It is possible to access the repositories using a standard webbrowser, but for the full functionality, a software client is highly recommended.
We use ToirtoiseSVN which is a freeware program available for Microsoft Windows operating systems (see http://tortoisesvn.net/), but any other subversion client is also fine. If you want to use a command-line tool (necessary for mirroring), you can find one here: http://www.sliksvn.com/.
For viewing file differences, we use WinMerge (also freeware for Microsoft Windows operating systems, see http://www.winmerge.org/). In particular we have a WinMerge plugin that enables you to view differences of files using the Oberon text format. The plugin can be found in the AOS repository in the folder /aos/trunk/tools/WinMerge/. The file install.txt which is also located there provides a short description of how to install the plugin.
Post a merge request at http://www.ocp.inf.ethz.ch/forum/index.php/board,10.0.html. We are looking forward for interesting contributions!
Copyright (C) 2007 ETH Zürich
September 01, 2015, at 04:10 AM