version 1.131, 2008/02/27 22:34:04 |
version 1.132, 2008/03/09 03:14:52 |
|
|
|
|
void cvs_commit_local(struct cvs_file *); |
void cvs_commit_local(struct cvs_file *); |
void cvs_commit_check_files(struct cvs_file *); |
void cvs_commit_check_files(struct cvs_file *); |
|
void cvs_commit_lock_dirs(struct cvs_file *); |
|
|
static BUF *commit_diff(struct cvs_file *, RCSNUM *, int); |
static BUF *commit_diff(struct cvs_file *, RCSNUM *, int); |
static void commit_desc_set(struct cvs_file *); |
static void commit_desc_set(struct cvs_file *); |
|
|
char *logmsg = NULL; |
char *logmsg = NULL; |
|
|
struct cvs_cmd cvs_cmd_commit = { |
struct cvs_cmd cvs_cmd_commit = { |
CVS_OP_COMMIT, CVS_USE_WDIR, "commit", |
CVS_OP_COMMIT, CVS_USE_WDIR | CVS_LOCK_REPO, "commit", |
{ "ci", "com" }, |
{ "ci", "com" }, |
"Check files into the repository", |
"Check files into the repository", |
"[-flR] [-F logfile | -m msg] [-r rev] ...", |
"[-flR] [-F logfile | -m msg] [-r rev] ...", |
|
|
cvs_client_send_request("ci"); |
cvs_client_send_request("ci"); |
cvs_client_get_responses(); |
cvs_client_get_responses(); |
} else { |
} else { |
|
cr.fileproc = cvs_commit_lock_dirs; |
|
cvs_file_walklist(&files_affected, &cr); |
|
|
cr.fileproc = cvs_commit_local; |
cr.fileproc = cvs_commit_local; |
cvs_file_walklist(&files_affected, &cr); |
cvs_file_walklist(&files_affected, &cr); |
cvs_file_freelist(&files_affected); |
cvs_file_freelist(&files_affected); |
|
|
|
|
xfree(logmsg); |
xfree(logmsg); |
return (0); |
return (0); |
|
} |
|
|
|
void |
|
cvs_commit_lock_dirs(struct cvs_file *cf) |
|
{ |
|
char repo[MAXPATHLEN]; |
|
|
|
cvs_get_repository_path(cf->file_wd, repo, sizeof(repo)); |
|
cvs_log(LP_TRACE, "cvs_commit_lock_dirs: %s", repo); |
|
|
|
/* locks stay in place until we are fully done and exit */ |
|
cvs_repository_lock(repo, 1); |
} |
} |
|
|
void |
void |