{"id":189,"date":"2015-05-26T22:21:28","date_gmt":"2015-05-26T21:21:28","guid":{"rendered":"http:\/\/www.pvcs2tfs.com\/?page_id=189"},"modified":"2015-05-26T22:21:28","modified_gmt":"2015-05-26T21:21:28","slug":"common-changset-detection-tolerance-in-seconds-in-detail","status":"publish","type":"page","link":"http:\/\/www.pvcs2tfs.com\/?page_id=189","title":{"rendered":"&#8220;Common changset detection tolerance in seconds&#8221; in detail"},"content":{"rendered":"<p>PVCS is a file-based vcs. This means that there is no \u201cchangeset\u201d which contains all files (and metadata) for a single check-in, even if you check-in several files at the same time.<br \/>\nIf you check-in several files at the same time, the following happens in PVCS:<\/p>\n<ul>\n<li>All files will get the same check-in username\n<li>All files will get the same check-in comment\n<li>All files will get checked-in sequential (one-by-one)\n<li>All files will get check-in time of the current date\/time of each file transfer to the PVCS archive\n<\/ul>\n<p>\uf0e8<br \/>\n==> Even if you check-in a couple of files, each of these file get a different check-in time. And if you check-in many files, it depends on your network\/server how long it will take. That means, that the check-in date\/time might differ in a very large range from each other.<\/p>\n<p>What PVCS2TFS is now doing to find such \u201cchangesets\u201d:<\/p>\n<ul>\n<li>It gets the first file revision\n<li>It searches all upcoming revisions, if they contain the same (ordinal) comment and the same (ordinal) username\n<li>If a same username\/comment is found, it checks if the check-in date\/time is in the specified range (e.g. +\/- 6 seconds) of the current min\/max values of all same revisions\n<\/ul>\n<p>If you now have a PVCS check-in with the same comment\/username and these files were checked-in during one PVCS check.in, then we might find our first date\/time as \u201c13:24:00\u201d. The next file might have \u201c13:24:02\u201d this will also be used in the same checkin (because it is inside the +\/- 6 seconds). The next file might have \u201c13:24:08\u201d, this file will also be used, because it is also inside the +\/- 6 seconds (-6 sec. => 13:23:56 \/ +6 sec. => 13:24:08). This means that the +\/- 6 seconds is always calculated from the min\/max of all existing revisions in this group.<\/p>\n<p>This is the reasons, that it might happen, that the (single) check-in date\/time from the comment in the TFS check-in might be different from the real PVCS date\/time. Also this time might differ in greater values. If the PVCS check-in took many minutes\/hours, then it might happen, that our tool detects this as one TFS changeset and therefor the times may differ in many minutes from each other.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>PVCS is a file-based vcs. This means that there is no \u201cchangeset\u201d which contains all files (and metadata) for a single check-in, even if you check-in several files at the same time. If you check-in several files at the same time, the following happens in PVCS: All files will get the same check-in username All [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":124,"menu_order":0,"comment_status":"closed","ping_status":"open","template":"","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-189","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/www.pvcs2tfs.com\/index.php?rest_route=\/wp\/v2\/pages\/189","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.pvcs2tfs.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/www.pvcs2tfs.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/www.pvcs2tfs.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.pvcs2tfs.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=189"}],"version-history":[{"count":2,"href":"http:\/\/www.pvcs2tfs.com\/index.php?rest_route=\/wp\/v2\/pages\/189\/revisions"}],"predecessor-version":[{"id":191,"href":"http:\/\/www.pvcs2tfs.com\/index.php?rest_route=\/wp\/v2\/pages\/189\/revisions\/191"}],"up":[{"embeddable":true,"href":"http:\/\/www.pvcs2tfs.com\/index.php?rest_route=\/wp\/v2\/pages\/124"}],"wp:attachment":[{"href":"http:\/\/www.pvcs2tfs.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=189"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}