[BACK]Return to checkout.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / cvs

Diff for /src/usr.bin/cvs/checkout.c between version 1.32 and 1.33

version 1.32, 2005/06/09 09:01:50 version 1.33, 2005/06/13 07:40:39
Line 48 
Line 48 
         CVS_OP_CHECKOUT, CVS_REQ_CO, "checkout",          CVS_OP_CHECKOUT, CVS_REQ_CO, "checkout",
         { "co", "get" },          { "co", "get" },
         "Checkout sources for editing",          "Checkout sources for editing",
         "[-AcflNnPpRs] [-D date | -r rev] [-d dir] [-j rev] [-k mode] "          "[-AcflNnPpRs] [-D date | -r tag] [-d dir] [-j rev] [-k mode] "
         "[-t id] module ...",          "[-t id] module ...",
         "AcD:d:fj:k:lNnPRr:st:",          "AcD:d:fj:k:lNnPRr:st:",
         NULL,          NULL,
Line 62 
Line 62 
         CVS_CMD_ALLOWSPEC | CVS_CMD_SENDDIR          CVS_CMD_ALLOWSPEC | CVS_CMD_SENDDIR
 };  };
   
 static char *date, *rev, *koptstr, *tgtdir, *rcsid;  struct cvs_cmd cvs_cmd_export = {
           CVS_OP_EXPORT, CVS_REQ_EXPORT, "export",
           { "ex", "exp" },
           "Extract copy of a module without management directories",
           "[-flNnR] [-d dir] [-k mode] -D date | -r tag module ...",
           "D:d:fk:lNnRr:",
           NULL,
           0,
           cvs_checkout_init,
           cvs_checkout_pre_exec,
           NULL,
           NULL,
           NULL,
           NULL,
           CVS_CMD_ALLOWSPEC | CVS_CMD_SENDDIR
   };
   
   static char *date, *tag, *koptstr, *tgtdir, *rcsid;
 static int statmod = 0;  static int statmod = 0;
 static int shorten = 1;  static int shorten = 1;
 static int usehead = 0;  static int usehead = 0;
Line 76 
Line 93 
 cvs_checkout_init(struct cvs_cmd *cmd, int argc, char **argv, int *arg)  cvs_checkout_init(struct cvs_cmd *cmd, int argc, char **argv, int *arg)
 {  {
         int ch;          int ch;
           RCSNUM *rcs;
   
         date = rev = koptstr = tgtdir = rcsid = NULL;          date = tag = koptstr = tgtdir = rcsid = NULL;
   
         while ((ch = getopt(argc, argv, cmd->cmd_opts)) != -1) {          while ((ch = getopt(argc, argv, cmd->cmd_opts)) != -1) {
                 switch (ch) {                  switch (ch) {
Line 118 
Line 136 
                         cvs_noexec = 1; /* no locks will be created */                          cvs_noexec = 1; /* no locks will be created */
                         break;                          break;
                 case 'r':                  case 'r':
                         rev = optarg;                          tag = optarg;
                         cmd->cmd_flags |= CVS_CMD_PRUNEDIRS;                          cmd->cmd_flags |= CVS_CMD_PRUNEDIRS;
                         break;                          break;
                 case 's':                  case 's':
Line 149 
Line 167 
                 return (-1);                  return (-1);
         }          }
   
           /* `export' command exceptions */
           if (cvs_cmdop == CVS_OP_EXPORT) {
                   if (!tag && !date) {
                           cvs_log(LP_ABORT, "must specify a tag or date");
                           return (-1);
                   }
   
                   /* we don't want numerical revisions here */
                   if (tag && (rcs = rcsnum_parse(tag)) != NULL) {
                           cvs_log(LP_ABORT, "tag `%s' must be a symbolic tag",
                               tag);
                           rcsnum_free(rcs);
                           return (-1);
                   }
           }
   
         *arg = optind;          *arg = optind;
         return (0);          return (0);
 }  }
Line 215 
Line 249 
                         return (CVS_EX_PROTO);                          return (CVS_EX_PROTO);
                 else if ((statmod == CVS_STATMOD) &&                  else if ((statmod == CVS_STATMOD) &&
                     (cvs_sendarg(root, "-s", 0) < 0))                      (cvs_sendarg(root, "-s", 0) < 0))
                           return (CVS_EX_PROTO);
   
                   if ((tag != NULL) && ((cvs_sendarg(root, "-r", 0) < 0) ||
                       (cvs_sendarg(root, tag, 0) < 0)))
                         return (CVS_EX_PROTO);                          return (CVS_EX_PROTO);
         }          }
         return (0);          return (0);

Legend:
Removed from v.1.32  
changed lines
  Added in v.1.33