On 12-09-26 8:25 PM, Curt Seeliger wrote:
Folks,

A small group of us are working together to develop a set of R functions
to support data management and analysis using Eclipse/StatET in a Windows
environment.  We are using Git/EGit for version control. We work within
our own repository and occasionally push to a common remote location.

I'd like to have the code source files from the 'local' git repository
without modification, where 'local' could mean c:\yada\ for one person,
m:\my documents\wetlands\ for another, and l:\foo\bar\sharedRemote\wet\ to
another user.

The chdir argument to source() has been suggested for similar questions,
but I have not been able to figure out how this helps without hardcoding
the location in some manner.

One option is for each repository to have an untracked file which sets the
local working directory before sourcing another file that actually sources
the function definitions.  This file (projectStart.r below) would be read
into the R session prior to use, at least during development.

projectStart.r                  # untracked
     setwd("c:\yada\")           # or setwd("L:\foo\bar\sharedRemote\wet\")
-- this is the only difference among repository locations.
     source("projectStart2.r")

projectStart2.r                 # tracked
     source("func1.r")
     source("func2.r")
     source("func3.r")
     ...

func1.r                         # tracked

func2.r                         # tracked

func3.r                         # tracked

...

Is there an easier or better accepted method?

Yes.  Use

library(myProject)

where myProject is a package containing all the scripts, written as functions.

Duncan Murdoch

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to