248 |
|
|
249 |
int |
int |
250 |
base_checkout (RCSNode *rcs, struct file_info *finfo, |
base_checkout (RCSNode *rcs, struct file_info *finfo, |
251 |
const char *prev, const char *rev, const char *tag, |
const char *prev, const char *rev, const char *ptag, |
252 |
const char *poptions, const char *options) |
const char *tag, const char *poptions, const char *options) |
253 |
{ |
{ |
254 |
int status; |
int status; |
255 |
char *basefile; |
char *basefile; |
256 |
|
|
257 |
TRACE (TRACE_FUNCTION, "base_checkout (%s, %s, %s, %s, %s, %s)", |
TRACE (TRACE_FUNCTION, "base_checkout (%s, %s, %s, %s, %s, %s, %s)", |
258 |
finfo->fullname, prev, rev, tag, poptions, options); |
finfo->fullname, prev, rev, ptag, tag, poptions, options); |
259 |
|
|
260 |
mkdir_if_needed (CVSADM_BASE); |
mkdir_if_needed (CVSADM_BASE); |
261 |
|
|
272 |
free (basefile); |
free (basefile); |
273 |
|
|
274 |
if (server_active && strcmp (cvs_cmd_name, "export")) |
if (server_active && strcmp (cvs_cmd_name, "export")) |
275 |
server_base_checkout (rcs, finfo, prev, rev, tag, poptions, options); |
server_base_checkout (rcs, finfo, prev, rev, ptag, tag, |
276 |
|
poptions, options); |
277 |
|
|
278 |
return status; |
return status; |
279 |
} |
} |
320 |
|
|
321 |
/* Merge revisions REV1 and REV2. */ |
/* Merge revisions REV1 and REV2. */ |
322 |
int |
int |
323 |
base_merge (RCSNode *rcs, struct file_info *finfo, const char *options, |
base_merge (RCSNode *rcs, struct file_info *finfo, const char *ptag, |
324 |
const char *urev, const char *rev1, const char *rev2) |
const char *poptions, const char *options, const char *urev, |
325 |
|
const char *rev1, const char *rev2) |
326 |
{ |
{ |
327 |
char *f1, *f2; |
char *f1, *f2; |
328 |
int retval; |
int retval; |
334 |
fails is not very informative -- it is taken verbatim from RCS 5.7, |
fails is not very informative -- it is taken verbatim from RCS 5.7, |
335 |
and relies on RCS_checkout saying something intelligent upon failure. */ |
and relies on RCS_checkout saying something intelligent upon failure. */ |
336 |
|
|
337 |
if (base_checkout (rcs, finfo, urev, rev1, rev1, NULL, options)) |
if (base_checkout (rcs, finfo, urev, rev1, ptag, rev1, poptions, options)) |
338 |
error (1, 0, "checkout of revision %s of `%s' failed.\n", |
error (1, 0, "checkout of revision %s of `%s' failed.\n", |
339 |
rev1, finfo->fullname); |
rev1, finfo->fullname); |
340 |
|
|
341 |
if (base_checkout (rcs, finfo, urev, rev2, rev2, NULL, options)) |
if (base_checkout (rcs, finfo, urev, rev2, ptag, rev2, poptions, options)) |
342 |
error (1, 0, "checkout of revision %s of `%s' failed.\n", |
error (1, 0, "checkout of revision %s of `%s' failed.\n", |
343 |
rev2, finfo->fullname); |
rev2, finfo->fullname); |
344 |
|
|