Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch dvcs Excluding Merge-Ins
This is equivalent to a diff from f57c8bb954 to 5d8c35fee6
2012-04-04
| ||
15:04 | dvcs_bzr: добавил возможность переключаться между ветками (используеться плагин в bzr colo) Leaf check-in: 5d8c35fee6 user: sosnae tags: dvcs | |
12:25 | dvcs_fossil:Добавил создание веток check-in: 82894e2906 user: sosnae tags: dvcs | |
11:24 | Добавил скрипт - отчет/анализ подписок на события. Это порт разработки http://infostart.ru/public/123745/. Пример работы с метаданными и СКД в Конфигураторе check-in: b091654dee user: orefkov tags: trunk | |
10:04 | merget with trunk check-in: c0fa5f5120 user: sosnae tags: dvcs | |
2012-04-03
| ||
10:25 | Начат скрипт - альтернативная панель окон check-in: f57c8bb954 user: orefkov tags: trunk | |
2012-04-02
| ||
11:56 | tramessage.js - скрипт, по выводу в системный трей напоминаний пользователю, о окончании выполнения долгих операций: окончание сравнения конфигураций, окончание анализа изменений для базы данных. check-in: c68a888f54 user: sosnae tags: trunk | |
Changes to dvcs/dvcs_bzr.js.
191 191 } 192 192 return null 193 193 } //bzr_getFileAtRevision 194 194 195 195 196 196 function bzr_commit(pathToFile, message) { 197 197 var rootCatalog = bzr_getRootCatalog(pathToFile); 198 + var tempfile = GetTempFileName("txt"); 198 199 var f = v8New("File", pathToFile); 199 200 if (f.IsDirectory()) { 200 201 pathToFile = '' 201 202 } else { 202 203 pathToFile = '"'+pathToFile+'"' 203 204 } 204 205 var TextDoc = v8New("TextDocument"); 205 206 TextDoc.AddLine('cd /d "'+rootCatalog+'"') 206 - TextDoc.AddLine('bzr commit ' +pathToFile+' -m "'+message+'"'); 207 + TextDoc.AddLine('bzr commit ' +pathToFile+' --file="'+tempfile+'"'); 208 + TextDoc.AddLine('exit'); 209 + 207 210 TextDoc.Write(PathToBat, 'cp866'); 208 211 209 212 TextDoc.Clear(); 210 - ErrCode = WshShell.Run('"'+PathToBat+'"', 0, 1) 213 + TextDoc.SetText(message); 214 + TextDoc.Write(tempfile, 'utf-8'); 215 + ErrCode = WshShell.Run('"'+PathToBat+'"', 1, 1) 211 216 return ErrCode 212 217 } //bzr_commit 213 218 214 219 function bzr_getFilePathToDiff(param1, param2) { // ... 215 220 216 221 var TextDoc = v8New("TextDocument"); 217 222 TextDoc.(PathToOutput, "UTF-8"); ................................................................................ 336 341 } 337 342 result["comment"] = TextDoc.GetText(); 338 343 return result 339 344 } 340 345 341 346 function bzr_getListBranch(pathToFile, index) { 342 347 343 - result = {"valuelist":v8New("ValueList"), "index":-1} 344 - 345 -/* var rootCatalog = fossil_getRootCatalog(pathToFile); 346 - var PathToFossilOutput = TempDir + "fossilstatus.txt" // 1 utf-8, fossil . 347 - var PathToBatFossil = TempDir + "fossilTrue.bat" 348 + // bzr , bzr qcoloswitch . 349 + var result = false; 350 + var rootCatalog = bzr_getRootCatalog(pathToFile); 348 351 var TextDoc = v8New("TextDocument"); 349 - TextDoc.AddLine('cd /d "'+rootCatalog+'"') 350 - //var = pathToFile.replace(rootCatalog+'\\', ''); 351 - TextDoc.AddLine(PathToFossil+' branch > "'+PathToFossilOutput+'"') 352 - TextDoc.Write(PathToBatFossil, 'cp866'); 353 - ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1) 354 - TextDoc.Clear(); 355 - TextDoc.Read(PathToFossilOutput, "UTF-8"); 356 - var re = new RegExp(/(\s*|\*\s)(\S*)\n/g); 357 - var r = TextDoc.(); 358 - var matches; 359 - var index=0; 360 - //debugger; 361 - while ((matches = re.exec(r)) != null) 362 - { 363 - result['valuelist'].add(matches[2], matches[2]) 364 - if (matches[1].indexOf("\*")!=-1) result["index"]=index; 365 - index++; 366 - } */ 352 + TextDoc.AddLine('cd /d "'+rootCatalog+'"'); 353 + TextDoc.AddLine('bzr qcoloswitch'); 354 + TextDoc.AddLine('exit'); 355 + TextDoc.Write(PathToBat, 'cp866'); 356 + ErrCode = WshShell.Run('"'+PathToBat+'"', 0, 1) 357 + 367 358 return result; 368 359 369 360 } 370 361 371 362 function bzr_swithBranch (pathToFile, branch) { 372 - 373 - /* var rootCatalog = fossil_getRootCatalog(pathToFile); 374 - var PathToFossilOutput = TempDir + "fossilstatus.txt" // 1 utf-8, fossil . 375 - var PathToBatFossil = TempDir + "fossilTrue.bat" 376 - var TextDoc = v8New("TextDocument"); 377 - TextDoc.AddLine('cd /d "'+rootCatalog+'"') 378 - //var = pathToFile.replace(rootCatalog+'\\', ''); 379 - TextDoc.AddLine(PathToFossil+' update '+ branch +' > "'+PathToFossilOutput+'"'); 380 - TextDoc.Write(PathToBatFossil, 'cp866'); 381 - ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1) 382 - TextDoc.Clear(); */ 363 + 383 364 return true; 384 365 } 385 366 386 367 387 368 388 369 function Backend_bzr(command, param1, param2) { 389 370 var result = false; ................................................................................ 434 415 case "GETLOG": 435 416 result = bzr_getLog(param1, param2); 436 417 break 437 418 case "GETINFO": 438 419 result = bzr_getInfo(param1, param2); 439 420 break 440 421 case "GETLISTBRANCH": 441 - result = bzr_getListBranch(param1); // result {"valuelist":v8New("ValueList"), "index": } 422 + result = bzr_getListBranch(param1); // result {"valuelist":v8New("ValueList"), "index": } false... 442 423 break 443 424 case "SWITHBRANCH": 444 - result = bzr_swithBranch(param1, param2); // ... true & false 425 + result = bzr_swithBranch(param1, param2); // ... true || false 445 426 break; 446 427 447 428 } 448 429 return result 449 430 } //Backend_bzr 450 431 451 432 function GetBackend() { 452 433 return Backend_bzr 453 434 } //GetBackend
Changes to dvcs/dvcs_fossil.js.
335 335 var r = ""; // Текущая строка прочитанная 336 336 var ver1 = '' // Номер версии первого файла 337 337 var ver1sha1 = '' //sha1 первого файла в базе fossil 338 338 339 339 // Запусим shell и найдем версии файлов. 340 340 TextDoc.Clear(); 341 341 TextDoc.AddLine('cd /d "' +rootCatalog +'"') 342 - TextDoc.AddLine(PathToFossil+' finfo -b --limit 1 "'+pathToFile+'" >> "' +PathToFossilOutput+'"'); 342 + TextDoc.AddLine(PathToFossil+' finfo -b --limit 1 "'+pathToFile+'" > "' +PathToFossilOutput+'"'); 343 343 TextDoc.Write(PathToBatFossil, 'cp866'); 344 344 345 345 ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1) 346 346 TextDoc.Read(PathToFossilOutput, "UTF-8"); 347 347 if (TextDoc.LineCount() == 0) { 348 348 Message (" 1 комманда отработала, но вывод не записался, надо отладить!") 349 349 return false //что то пошло не так. ................................................................................ 414 414 var PathToBatFossil = TempDir + "fossilTrue.bat" 415 415 var TextDoc = v8New("TextDocument"); 416 416 TextDoc.Записать(PathToFossilOutput, "UTF-8"); 417 417 var лКаталог =""; 418 418 //if (лКаталог == '') { //определим текущий ROOT каталог для fossil 419 419 var млКаталог = pathToCatalog; 420 420 TextDoc.AddLine('cd /d"' +млКаталог +'"') 421 - TextDoc.AddLine(PathToFossil +' status >> "'+PathToFossilOutput+'"'); 421 + TextDoc.AddLine(PathToFossil +' status > "'+PathToFossilOutput+'"'); 422 422 TextDoc.Write(PathToBatFossil, 'cp866'); 423 423 ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1) 424 424 TextDoc.Read(PathToFossilOutput, "UTF-8"); 425 425 if (TextDoc.LineCount() == 0) { 426 426 Message ("комманда отработала, но вывод не записался, надо отладить!") 427 427 return null //что то пошло не так. 428 428 } ................................................................................ 669 669 //debugger; 670 670 while ((matches = re.exec(r)) != null) 671 671 { 672 672 result['valuelist'].add(matches[2], matches[2]) 673 673 if (matches[1].indexOf("\*")!=-1) result["index"]=index; 674 674 index++; 675 675 } 676 + //Добавим сюда комманды создания новой ветки... 677 + result['valuelist'].add("NEWBRANCH", "Новая ветка"); 678 + result['valuelist'].add("NEWBRANCHPRIVATE", "Новая приватная ветка"); 679 + 676 680 return result; 677 681 678 682 } 679 683 680 684 function fossil_swithBranch (pathToFile, branch) { 681 - 685 + 686 + if ((branch == "NEWBRANCH") || (branch == "NEWBRANCHPRIVATE")) return fossil_createBranch(pathToFile, branch); 682 687 var rootCatalog = fossil_getRootCatalog(pathToFile); 683 688 var PathToFossilOutput = TempDir + "fossilstatus.txt" // Пишем 1С файл в utf-8, выводим туда статус fossil после этого читаем его. 684 689 var PathToBatFossil = TempDir + "fossilTrue.bat" 685 690 var TextDoc = v8New("TextDocument"); 686 691 TextDoc.AddLine('cd /d "'+rootCatalog+'"') 687 692 //var ПутьОтносительноКорневогоКаталога = pathToFile.replace(rootCatalog+'\\', ''); 688 693 TextDoc.AddLine(PathToFossil+' update '+ branch +' > "'+PathToFossilOutput+'"'); 689 694 TextDoc.Write(PathToBatFossil, 'cp866'); 690 695 ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1) 691 696 TextDoc.Clear(); 692 697 return true; 693 698 } 694 699 695 -function fossil_createBranch(pathToFile, branch) { 700 +function fossil_createBranch(pathToFile, branch, type) { 701 + 702 + var name = ""; 703 + var checkin = ""; 704 + if (type == undefined) type = ''; 705 + if (branch == "NEWBRANCHPRIVATE") { 706 + 707 + type = "--private"; 708 + } 709 + 710 + if ((branch == "NEWBRANCH") || (branch == "NEWBRANCHPRIVATE")){ 711 + var vbs = addins.byUniqueName("vbs").object 712 + vbs.var0 = ""; vbs.var1 = "Введите имя ветки"; vbs.var2 = 0, vbs.var3 = false; 713 + if (vbs.DoEval("InputString(var0, var1, var2, var3)")) { 714 + var message = vbs.var0; 715 + name = message; 716 + } 717 + } else { 718 + name = branch; 719 + } 720 + 721 + if (name.length==0) { 722 + Message('Имя ветки для создания пустое.'); 723 + return false; 724 + } 725 + 726 + var rootCatalog = fossil_getRootCatalog(pathToFile); 727 + var PathToFossilOutput = TempDir + "fossilstatus.txt" // Пишем 1С файл в utf-8, выводим туда статус fossil после этого читаем его. 728 + var PathToBatFossil = TempDir + "fossilTrue.bat" 729 + var TextDoc = v8New("TextDocument"); 730 + TextDoc.AddLine('cd /d "'+rootCatalog+'"'); 731 + TextDoc.AddLine(PathToFossil +' status > "'+PathToFossilOutput+'"'); 732 + TextDoc.Write(PathToBatFossil, 'cp866'); 733 + ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1) 734 + TextDoc.Clear(); 735 + TextDoc.Read(PathToFossilOutput, "UTF-8"); 736 + var re = new RegExp(/^checkout:\s*(\w*)\s*/m); 737 + var r = TextDoc.ПолучитьТекст(); 738 + var matches = r.match(re); 739 + 740 + if (matches && matches.length) { 741 + checkin = matches[1]; 742 + } 743 + 744 + TextDoc.AddLine('cd /d "'+rootCatalog+'"'); 745 + //TextDoc.AddLine(PathToFossil +' branch new '+name+' '+checkin+' '+type+' > "'+PathToFossilOutput+'"'); 746 + TextDoc.AddLine(PathToFossil +' branch new '+name+' '+checkin+' '+type); 747 + TextDoc.AddLine('exit'); 748 + TextDoc.Write(PathToBatFossil, 'cp866'); 749 + ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 1, 1); 750 + TextDoc.Clear(); 751 + fossil_swithBranch(pathToFile, name); 752 + /* TextDoc.Read(PathToFossilOutput, "UTF-8"); 753 + var r = TextDoc.ПолучитьТекст(); 754 + var re = new RegExp(/^New\sbranch:\s*(\w*)/m); 755 + var matches = r.match(re); 756 + if (matches && matches.length) { 757 + branch = matches[1]; 758 + fossil_swithBranch(pathToFile, branch); 759 + } else { 760 + Message(r); 761 + } */ 762 + 696 763 return true; 697 764 } 698 765 699 766 function Backend_fossil(command, param1, param2) { 700 767 var result = false; 701 768 switch (command) 702 769 { ................................................................................ 748 815 break 749 816 case "GETLISTBRANCH": 750 817 result = fossil_getListBranch(param1); //возвращаем result {"valuelist":v8New("ValueList"), "index": индекс ветки текущей} 751 818 break 752 819 case "SWITHBRANCH": 753 820 result = fossil_swithBranch(param1, param2); 754 821 break; 755 - case "CREATEBRANCH": 756 - result = fossil_createBranch(param1, param2); 757 - break; 758 822 } 759 823 return result 760 824 } //Backend_fossil 761 825 762 826 function GetBackend() { 763 827 return Backend_fossil 764 828 } //GetBackend 765 829 766 830 function getDefaultMacros() { 767 831 return 'НастрокаFossil' 768 832 } //getDefaultMacros
Changes to extfiles.js.
730 730 if(лТекСтрока==undefined) return 731 731 732 732 // Запомним текущую строку 733 733 лИмяФайлаТекСтроки=лТекСтрока.ИмяФайла 734 734 735 735 while(лТекСтрока.Родитель != undefined) лТекСтрока=лТекСтрока.Родитель 736 736 лТекСтрока.Строки.Очистить() 737 - dvcsGetCatalogStatus(лТекСтрока.Имя); 738 - dvcsGetMissingFiles(лТекСтрока.Имя, лТекСтрока) 737 + if (мИспользоватьВерсионирование){ 738 + dvcsGetCatalogStatus(лТекСтрока.Имя); 739 + dvcsGetMissingFiles(лТекСтрока.Имя, лТекСтрока); 740 + лТекСтрока.Статус = dvcsGetFileStatus(лТекСтрока.ИмяФайла); 741 + } 739 742 мДобавитьФайлы(лТекСтрока.Имя, лТекСтрока) 740 743 741 744 лТекСтрока.Строки.Сортировать("ЭтоКаталог Убыв, Имя", true) 742 745 743 746 // Восстановим текущую строку 744 747 лСтрокаНайденная=мФормаСкрипта.ДеревоФайлов.Строки.Найти(лИмяФайлаТекСтроки, "ИмяФайла", true) 745 748 if(лСтрокаНайденная != undefined)