Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-25166

When checking out/updating from a branch, the checkout does not respect the timestamp

    Details

    • Type: Bug
    • Status: Open (View Workflow)
    • Priority: Minor
    • Resolution: Unresolved
    • Component/s: cvs-plugin
    • Labels:
      None
    • Similar Issues:

      Description

      Ok, so you can see my attempt to fix this issue here:

      https://github.com/jenkinsci/cvs-plugin/commit/d0c8df0fa8c0f35c92b43e46d7ac59d21ef926db

      I have since backed it out:

      https://github.com/jenkinsci/cvs-plugin/commit/7c5f8e917274ae09159190d8294a572d5904659d

      But I actually believe that my original change should be OK, except that

      https://github.com/jenkinsci/cvsclient/blob/master/src/main/java/org/netbeans/lib/cvsclient/command/update/UpdateCommand.java#L309

      Assumes you never want to issue a cvs command like:

      cvs update -C -d -P -r BRANCH_NAME -D "14 Oct 2014 07:32:34 -0400" ...
      

      Which seems nuts as I can think of loads of cases where I would want to check out a specific revision of a named branch... (but then I am no expert in CVS so perhaps that is not something you can do!!! )

      CheckoutCommand does not seem to have the same logic:

      https://github.com/jenkinsci/cvsclient/blob/master/src/main/java/org/netbeans/lib/cvsclient/command/checkout/CheckoutCommand.java#L432

      Anyway, in any case I am throwing up my hands and saying " I give up! " over to the plugin maintainer to see about fixing this one!

        Attachments

          Issue Links

            Activity

            Hide
            jglick Jesse Glick added a comment -

            I cannot now remember whether you can mix -D and -r. It is possible one supersedes the other.

            http://stackoverflow.com/questions/3300471/cvs-get-the-state-of-some-branch-in-some-date is confusing since the querier states in the question that mixing them does not work, but then accepts an answer stating that it does work, with essentially the same options.

            I could not find a public CVS repository that uses branches at all.

            Show
            jglick Jesse Glick added a comment - I cannot now remember whether you can mix -D and -r . It is possible one supersedes the other. http://stackoverflow.com/questions/3300471/cvs-get-the-state-of-some-branch-in-some-date is confusing since the querier states in the question that mixing them does not work, but then accepts an answer stating that it does work, with essentially the same options. I could not find a public CVS repository that uses branches at all.
            Hide
            stephenconnolly Stephen Connolly added a comment -

            Well the plugin itself lets you mix -D and -r for checkout... just not for update!

            Show
            stephenconnolly Stephen Connolly added a comment - Well the plugin itself lets you mix -D and -r for checkout... just not for update!
            Hide
            jglick Jesse Glick added a comment -

            Curious. Usually in CVS these operations are synonymous.

            Show
            jglick Jesse Glick added a comment - Curious. Usually in CVS these operations are synonymous.
            Hide
            mc1arke Michael Clarke added a comment -

            I remember there being some oddity about using revision and date at the same time, but can't remember specifics. I'll create a patched version of cvslib and cvs-plugin tonight and try them against a private CVS repository tomorrow, but think there's a limitation in CVS server that stops this working.

            Show
            mc1arke Michael Clarke added a comment - I remember there being some oddity about using revision and date at the same time, but can't remember specifics. I'll create a patched version of cvslib and cvs-plugin tonight and try them against a private CVS repository tomorrow, but think there's a limitation in CVS server that stops this working.
            Hide
            stephenconnolly Stephen Connolly added a comment -

            @jesse, what I mean is that CheckoutCommand lets you specify both:

            https://github.com/jenkinsci/cvsclient/blob/master/src/main/java/org/netbeans/lib/cvsclient/command/checkout/CheckoutCommand.java#L432

            Now that could also be a bug in CheckoutCommand... but anyways

            Show
            stephenconnolly Stephen Connolly added a comment - @jesse, what I mean is that CheckoutCommand lets you specify both: https://github.com/jenkinsci/cvsclient/blob/master/src/main/java/org/netbeans/lib/cvsclient/command/checkout/CheckoutCommand.java#L432 Now that could also be a bug in CheckoutCommand... but anyways
            Hide
            jglick Jesse Glick added a comment -

            Right, the ancient reptilian portion of my brain which stores idiosyncrasies of CVS behavior tensed up when it saw -D -r together, so it definitely merits testing.

            Show
            jglick Jesse Glick added a comment - Right, the ancient reptilian portion of my brain which stores idiosyncrasies of CVS behavior tensed up when it saw -D -r together, so it definitely merits testing.
            Hide
            stephenconnolly Stephen Connolly added a comment -

            @Michael, did you get a chance to test?

            https://github.com/jenkinsci/cvsclient/pull/2 is the change to cvsclient that our customer believes will do what they are looking for

            Show
            stephenconnolly Stephen Connolly added a comment - @Michael, did you get a chance to test? https://github.com/jenkinsci/cvsclient/pull/2 is the change to cvsclient that our customer believes will do what they are looking for
            Hide
            jglick Jesse Glick added a comment -

            Linking to PR under evaluation.

            Show
            jglick Jesse Glick added a comment - Linking to PR under evaluation.

              People

              • Assignee:
                Unassigned
                Reporter:
                stephenconnolly Stephen Connolly
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: