version 1.9, 2004/12/07 17:10:56 |
version 1.10, 2004/12/08 17:22:48 |
|
|
int |
int |
cvs_commit(int argc, char **argv) |
cvs_commit(int argc, char **argv) |
{ |
{ |
int i, ch, recurse, flags; |
int i, ch, flags; |
char *msg, *mfile; |
char *msg, *mfile; |
struct cvs_flist cl; |
struct cvs_flist cl; |
struct cvsroot *root; |
struct cvsroot *root; |
|
|
flags = CF_RECURSE|CF_IGNORE|CF_SORT; |
flags = CF_RECURSE|CF_IGNORE|CF_SORT; |
recurse = 1; |
|
mfile = NULL; |
mfile = NULL; |
msg = NULL; |
msg = NULL; |
TAILQ_INIT(&cl); |
TAILQ_INIT(&cl); |
|
|
while ((ch = getopt(argc, argv, "F:flm:R")) != -1) { |
while ((ch = getopt(argc, argv, "F:flm:Rr:")) != -1) { |
switch (ch) { |
switch (ch) { |
case 'F': |
case 'F': |
mfile = optarg; |
mfile = optarg; |
break; |
break; |
case 'f': |
case 'f': |
recurse = 0; |
/* XXX half-implemented */ |
|
flags &= ~CF_RECURSE; |
break; |
break; |
case 'l': |
case 'l': |
recurse = 0; |
flags &= ~CF_RECURSE; |
break; |
break; |
case 'm': |
case 'm': |
msg = optarg; |
msg = optarg; |
break; |
break; |
case 'R': |
case 'R': |
recurse = 1; |
flags |= CF_RECURSE; |
break; |
break; |
default: |
default: |
return (EX_USAGE); |
return (EX_USAGE); |
|
|
cvs_file_examine(cvs_files, cvs_commit_prepare, &cl); |
cvs_file_examine(cvs_files, cvs_commit_prepare, &cl); |
|
|
if (msg == NULL) { |
if (msg == NULL) { |
msg = cvs_logmsg_get(CVS_FILE_NAME(cvs_files), &cl); |
msg = cvs_logmsg_get(CVS_FILE_NAME(cvs_files), NULL, &cl, NULL); |
if (msg == NULL) |
if (msg == NULL) |
return (1); |
return (1); |
} |
} |