Changes On Branch dvcs Вы: nobody
Вход

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
192
193
194
195
196
197

198
199
200
201
202
203
204
205
206


207
208
209


210
211
212
213
214
215
216
217
...
336
337
338
339
340
341
342
343
344

345
346
347
348
349
350
351


352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
...
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
    }
    return null
} //bzr_getFileAtRevision


function bzr_commit(pathToFile, message) {
    var rootCatalog = bzr_getRootCatalog(pathToFile);

    var f = v8New("File", pathToFile);
    if (f.IsDirectory()) {
        pathToFile = ''
    } else {
        pathToFile = '"'+pathToFile+'"'
    }
    var TextDoc = v8New("TextDocument");
    TextDoc.AddLine('cd /d "'+rootCatalog+'"')
    TextDoc.AddLine('bzr commit ' +pathToFile+' -m "'+message+'"');


    TextDoc.Write(PathToBat, 'cp866');
    
    TextDoc.Clear();


    ErrCode = WshShell.Run('"'+PathToBat+'"', 0, 1)
    return ErrCode
} //bzr_commit

function bzr_getFilePathToDiff(param1, param2) { //    ...
    
    var TextDoc = v8New("TextDocument");
    TextDoc.(PathToOutput, "UTF-8");
................................................................................
    }
    result["comment"] = TextDoc.GetText();
    return result
}

function bzr_getListBranch(pathToFile, index) {
    
    result = {"valuelist":v8New("ValueList"), "index":-1}


/*     var rootCatalog = fossil_getRootCatalog(pathToFile);
    var PathToFossilOutput = TempDir + "fossilstatus.txt" //  1   utf-8,    fossil    . 
    var PathToBatFossil = TempDir + "fossilTrue.bat"
    var TextDoc = v8New("TextDocument");
    TextDoc.AddLine('cd /d "'+rootCatalog+'"')
    //var  = pathToFile.replace(rootCatalog+'\\', '');
    TextDoc.AddLine(PathToFossil+' branch  > "'+PathToFossilOutput+'"')


    TextDoc.Write(PathToBatFossil, 'cp866');
    ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1)
    TextDoc.Clear();
    TextDoc.Read(PathToFossilOutput, "UTF-8");
    var re = new RegExp(/(\s*|\*\s)(\S*)\n/g);
    var r = TextDoc.();
    var matches;
    var index=0;
    //debugger;
    while ((matches = re.exec(r)) != null)
    {
        result['valuelist'].add(matches[2], matches[2])
        if (matches[1].indexOf("\*")!=-1) result["index"]=index;
        index++;
    } */
    return result;
    
}

function bzr_swithBranch (pathToFile, branch) {

    /* var rootCatalog = fossil_getRootCatalog(pathToFile);
    var PathToFossilOutput = TempDir + "fossilstatus.txt" //  1   utf-8,    fossil    . 
    var PathToBatFossil = TempDir + "fossilTrue.bat"
    var TextDoc = v8New("TextDocument");
    TextDoc.AddLine('cd /d "'+rootCatalog+'"')
    //var  = pathToFile.replace(rootCatalog+'\\', '');
    TextDoc.AddLine(PathToFossil+' update '+ branch +' > "'+PathToFossilOutput+'"');
    TextDoc.Write(PathToBatFossil, 'cp866');
    ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1)
    TextDoc.Clear(); */
    return true;
}



function Backend_bzr(command, param1, param2) {
    var result = false;
................................................................................
    case "GETLOG":
        result = bzr_getLog(param1, param2);
        break
    case "GETINFO":
        result = bzr_getInfo(param1, param2);
        break
    case "GETLISTBRANCH":
        result = bzr_getListBranch(param1); // result {"valuelist":v8New("ValueList"), "index":   }
        break
    case "SWITHBRANCH":
        result = bzr_swithBranch(param1, param2); // ...  true & false
        break;

    }
    return result
} //Backend_bzr

function GetBackend() {
    return Backend_bzr
} //GetBackend







>








|
>
>



>
>
|







 







|
<
>
|
<
<

|
<
<
>
>
|
|
<
<
<
<
<
<
<
<
|
<
<
<
<





|
<
<
<
<
<
<
<
<
<
<







 







|


|









191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
...
341
342
343
344
345
346
347
348

349
350


351
352


353
354
355
356








357




358
359
360
361
362
363










364
365
366
367
368
369
370
...
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
    }
    return null
} //bzr_getFileAtRevision


function bzr_commit(pathToFile, message) {
    var rootCatalog = bzr_getRootCatalog(pathToFile);
    var tempfile = GetTempFileName("txt");
    var f = v8New("File", pathToFile);
    if (f.IsDirectory()) {
        pathToFile = ''
    } else {
        pathToFile = '"'+pathToFile+'"'
    }
    var TextDoc = v8New("TextDocument");
    TextDoc.AddLine('cd /d "'+rootCatalog+'"')
    TextDoc.AddLine('bzr commit ' +pathToFile+' --file="'+tempfile+'"');
    TextDoc.AddLine('exit');
    
    TextDoc.Write(PathToBat, 'cp866');
    
    TextDoc.Clear();
    TextDoc.SetText(message);
    TextDoc.Write(tempfile, 'utf-8');
    ErrCode = WshShell.Run('"'+PathToBat+'"', 1, 1)
    return ErrCode
} //bzr_commit

function bzr_getFilePathToDiff(param1, param2) { //    ...
    
    var TextDoc = v8New("TextDocument");
    TextDoc.(PathToOutput, "UTF-8");
................................................................................
    }
    result["comment"] = TextDoc.GetText();
    return result
}

function bzr_getListBranch(pathToFile, index) {
    
    //  bzr   ,    bzr qcoloswitch  . 

    var result = false;
    var rootCatalog = bzr_getRootCatalog(pathToFile);


    var TextDoc = v8New("TextDocument");
    TextDoc.AddLine('cd /d "'+rootCatalog+'"');


    TextDoc.AddLine('bzr qcoloswitch');
    TextDoc.AddLine('exit');
    TextDoc.Write(PathToBat, 'cp866');
    ErrCode = WshShell.Run('"'+PathToBat+'"', 0, 1)








    




    return result;
    
}

function bzr_swithBranch (pathToFile, branch) {
    










    return true;
}



function Backend_bzr(command, param1, param2) {
    var result = false;
................................................................................
    case "GETLOG":
        result = bzr_getLog(param1, param2);
        break
    case "GETINFO":
        result = bzr_getInfo(param1, param2);
        break
    case "GETLISTBRANCH":
        result = bzr_getListBranch(param1); // result {"valuelist":v8New("ValueList"), "index":   }  false...
        break
    case "SWITHBRANCH":
        result = bzr_swithBranch(param1, param2); // ...  true || false
        break;

    }
    return result
} //Backend_bzr

function GetBackend() {
    return Backend_bzr
} //GetBackend

Changes to dvcs/dvcs_fossil.js.

335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
...
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
...
669
670
671
672
673
674
675




676
677
678
679
680
681

682
683
684
685
686
687
688
689
690
691
692
693
694
695






























































696
697
698
699
700
701
702
...
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
    var r = ""; // Текущая строка прочитанная
    var ver1 = '' // Номер версии первого файла
    var ver1sha1 = '' //sha1 первого файла в базе fossil
    
    // Запусим shell и найдем версии файлов. 
    TextDoc.Clear();
    TextDoc.AddLine('cd /d "' +rootCatalog +'"')
    TextDoc.AddLine(PathToFossil+' finfo -b --limit 1 "'+pathToFile+'" >> "' +PathToFossilOutput+'"');
    TextDoc.Write(PathToBatFossil, 'cp866');
    
    ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1)
    TextDoc.Read(PathToFossilOutput, "UTF-8");
    if (TextDoc.LineCount() == 0) {
        Message (" 1 комманда отработала, но вывод не записался, надо отладить!")
        return false //что то пошло не так. 
................................................................................
    var PathToBatFossil = TempDir + "fossilTrue.bat"
    var TextDoc = v8New("TextDocument");
    TextDoc.Записать(PathToFossilOutput, "UTF-8");
    var лКаталог ="";
    //if (лКаталог == '') { //определим текущий ROOT каталог для fossil 
    var млКаталог = pathToCatalog;
    TextDoc.AddLine('cd /d"' +млКаталог +'"')
    TextDoc.AddLine(PathToFossil +' status >> "'+PathToFossilOutput+'"');
    TextDoc.Write(PathToBatFossil, 'cp866');
    ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1)
    TextDoc.Read(PathToFossilOutput, "UTF-8");
    if (TextDoc.LineCount() == 0) {
        Message ("комманда отработала, но вывод не записался, надо отладить!")
        return null //что то пошло не так. 
    }
................................................................................
    //debugger;
    while ((matches = re.exec(r)) != null)
    {
        result['valuelist'].add(matches[2], matches[2])
        if (matches[1].indexOf("\*")!=-1) result["index"]=index;
        index++;
    }




    return result;
    
}

function fossil_swithBranch (pathToFile, branch) {


    var rootCatalog = fossil_getRootCatalog(pathToFile);
    var PathToFossilOutput = TempDir + "fossilstatus.txt" // Пишем 1С файл в utf-8, выводим туда статус fossil после этого читаем его. 
    var PathToBatFossil = TempDir + "fossilTrue.bat"
    var TextDoc = v8New("TextDocument");
    TextDoc.AddLine('cd /d "'+rootCatalog+'"')
    //var ПутьОтносительноКорневогоКаталога = pathToFile.replace(rootCatalog+'\\', '');
    TextDoc.AddLine(PathToFossil+' update '+ branch +' > "'+PathToFossilOutput+'"');
    TextDoc.Write(PathToBatFossil, 'cp866');
    ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1)
    TextDoc.Clear();
    return true;
}

function fossil_createBranch(pathToFile, branch) {






























































    return true;
}

function Backend_fossil(command, param1, param2) {
    var result = false;
    switch (command) 
    {
................................................................................
        break
    case "GETLISTBRANCH":
        result = fossil_getListBranch(param1); //возвращаем result {"valuelist":v8New("ValueList"), "index": индекс ветки текущей}
        break
    case "SWITHBRANCH":
        result = fossil_swithBranch(param1, param2);
        break;
    case "CREATEBRANCH":
        result = fossil_createBranch(param1, param2);
        break;
    }
    return result
} //Backend_fossil

function GetBackend() {
    return Backend_fossil
} //GetBackend

function getDefaultMacros() {
    return 'НастрокаFossil'
} //getDefaultMacros







|







 







|







 







>
>
>
>





|
>













|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







 







<
<
<











335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
...
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
...
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
...
815
816
817
818
819
820
821



822
823
824
825
826
827
828
829
830
831
832
    var r = ""; // Текущая строка прочитанная
    var ver1 = '' // Номер версии первого файла
    var ver1sha1 = '' //sha1 первого файла в базе fossil
    
    // Запусим shell и найдем версии файлов. 
    TextDoc.Clear();
    TextDoc.AddLine('cd /d "' +rootCatalog +'"')
    TextDoc.AddLine(PathToFossil+' finfo -b --limit 1 "'+pathToFile+'" > "' +PathToFossilOutput+'"');
    TextDoc.Write(PathToBatFossil, 'cp866');
    
    ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1)
    TextDoc.Read(PathToFossilOutput, "UTF-8");
    if (TextDoc.LineCount() == 0) {
        Message (" 1 комманда отработала, но вывод не записался, надо отладить!")
        return false //что то пошло не так. 
................................................................................
    var PathToBatFossil = TempDir + "fossilTrue.bat"
    var TextDoc = v8New("TextDocument");
    TextDoc.Записать(PathToFossilOutput, "UTF-8");
    var лКаталог ="";
    //if (лКаталог == '') { //определим текущий ROOT каталог для fossil 
    var млКаталог = pathToCatalog;
    TextDoc.AddLine('cd /d"' +млКаталог +'"')
    TextDoc.AddLine(PathToFossil +' status > "'+PathToFossilOutput+'"');
    TextDoc.Write(PathToBatFossil, 'cp866');
    ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1)
    TextDoc.Read(PathToFossilOutput, "UTF-8");
    if (TextDoc.LineCount() == 0) {
        Message ("комманда отработала, но вывод не записался, надо отладить!")
        return null //что то пошло не так. 
    }
................................................................................
    //debugger;
    while ((matches = re.exec(r)) != null)
    {
        result['valuelist'].add(matches[2], matches[2])
        if (matches[1].indexOf("\*")!=-1) result["index"]=index;
        index++;
    }
    //Добавим сюда комманды создания новой ветки...
    result['valuelist'].add("NEWBRANCH", "Новая ветка");
    result['valuelist'].add("NEWBRANCHPRIVATE", "Новая приватная ветка");
    
    return result;
    
}

function fossil_swithBranch (pathToFile, branch) {
    
    if ((branch == "NEWBRANCH") || (branch == "NEWBRANCHPRIVATE")) return fossil_createBranch(pathToFile, branch);
    var rootCatalog = fossil_getRootCatalog(pathToFile);
    var PathToFossilOutput = TempDir + "fossilstatus.txt" // Пишем 1С файл в utf-8, выводим туда статус fossil после этого читаем его. 
    var PathToBatFossil = TempDir + "fossilTrue.bat"
    var TextDoc = v8New("TextDocument");
    TextDoc.AddLine('cd /d "'+rootCatalog+'"')
    //var ПутьОтносительноКорневогоКаталога = pathToFile.replace(rootCatalog+'\\', '');
    TextDoc.AddLine(PathToFossil+' update '+ branch +' > "'+PathToFossilOutput+'"');
    TextDoc.Write(PathToBatFossil, 'cp866');
    ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1)
    TextDoc.Clear();
    return true;
}

function fossil_createBranch(pathToFile, branch, type) {
    
    var name = "";
    var checkin = "";
    if (type == undefined) type = '';
    if (branch == "NEWBRANCHPRIVATE") {
        
        type = "--private";
    }
    
    if ((branch == "NEWBRANCH") || (branch == "NEWBRANCHPRIVATE")){
        var vbs = addins.byUniqueName("vbs").object
        vbs.var0 = ""; vbs.var1 = "Введите имя ветки"; vbs.var2 = 0, vbs.var3 = false;
        if (vbs.DoEval("InputString(var0, var1, var2, var3)")) {
            var message  = vbs.var0;
            name = message;
        }
    } else {
        name = branch;
    }
    
    if (name.length==0) {
        Message('Имя ветки для создания пустое.');
        return false;
    }
    
    var rootCatalog = fossil_getRootCatalog(pathToFile);
    var PathToFossilOutput = TempDir + "fossilstatus.txt" // Пишем 1С файл в utf-8, выводим туда статус fossil после этого читаем его. 
    var PathToBatFossil = TempDir + "fossilTrue.bat"
    var TextDoc = v8New("TextDocument");
    TextDoc.AddLine('cd /d "'+rootCatalog+'"');
    TextDoc.AddLine(PathToFossil +' status > "'+PathToFossilOutput+'"');
    TextDoc.Write(PathToBatFossil, 'cp866');
    ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 0, 1)
    TextDoc.Clear();
    TextDoc.Read(PathToFossilOutput, "UTF-8");
    var re = new RegExp(/^checkout:\s*(\w*)\s*/m);
    var r = TextDoc.ПолучитьТекст();
    var matches = r.match(re);
    
    if (matches && matches.length) {
        checkin = matches[1];
    }
    
    TextDoc.AddLine('cd /d "'+rootCatalog+'"');
    //TextDoc.AddLine(PathToFossil +' branch new '+name+' '+checkin+' '+type+' > "'+PathToFossilOutput+'"');
    TextDoc.AddLine(PathToFossil +' branch new '+name+' '+checkin+' '+type);
    TextDoc.AddLine('exit');
    TextDoc.Write(PathToBatFossil, 'cp866');
    ErrCode = WshShell.Run('"'+PathToBatFossil+'"', 1, 1);
    TextDoc.Clear();
    fossil_swithBranch(pathToFile, name);
    /* TextDoc.Read(PathToFossilOutput, "UTF-8");
    var r = TextDoc.ПолучитьТекст();
    var re = new RegExp(/^New\sbranch:\s*(\w*)/m);
    var matches = r.match(re);
    if (matches && matches.length) {
        branch = matches[1];
        fossil_swithBranch(pathToFile, branch);
    } else {
        Message(r);
    } */
    
    return true;
}

function Backend_fossil(command, param1, param2) {
    var result = false;
    switch (command) 
    {
................................................................................
        break
    case "GETLISTBRANCH":
        result = fossil_getListBranch(param1); //возвращаем result {"valuelist":v8New("ValueList"), "index": индекс ветки текущей}
        break
    case "SWITHBRANCH":
        result = fossil_swithBranch(param1, param2);
        break;



    }
    return result
} //Backend_fossil

function GetBackend() {
    return Backend_fossil
} //GetBackend

function getDefaultMacros() {
    return 'НастрокаFossil'
} //getDefaultMacros

Changes to extfiles.js.

730
731
732
733
734
735
736

737
738


739
740
741
742
743
744
745
    if(лТекСтрока==undefined) return
    
    // Запомним текущую строку
    лИмяФайлаТекСтроки=лТекСтрока.ИмяФайла
    
    while(лТекСтрока.Родитель != undefined) лТекСтрока=лТекСтрока.Родитель
    лТекСтрока.Строки.Очистить()

    dvcsGetCatalogStatus(лТекСтрока.Имя);
    dvcsGetMissingFiles(лТекСтрока.Имя, лТекСтрока)


    мДобавитьФайлы(лТекСтрока.Имя, лТекСтрока)
    
    лТекСтрока.Строки.Сортировать("ЭтоКаталог Убыв, Имя", true)
    
    // Восстановим текущую строку
    лСтрокаНайденная=мФормаСкрипта.ДеревоФайлов.Строки.Найти(лИмяФайлаТекСтроки, "ИмяФайла", true)
    if(лСтрокаНайденная != undefined)







>
|
|
>
>







730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
    if(лТекСтрока==undefined) return
    
    // Запомним текущую строку
    лИмяФайлаТекСтроки=лТекСтрока.ИмяФайла
    
    while(лТекСтрока.Родитель != undefined) лТекСтрока=лТекСтрока.Родитель
    лТекСтрока.Строки.Очистить()
    if (мИспользоватьВерсионирование){ 
        dvcsGetCatalogStatus(лТекСтрока.Имя);
        dvcsGetMissingFiles(лТекСтрока.Имя, лТекСтрока);
        лТекСтрока.Статус = dvcsGetFileStatus(лТекСтрока.ИмяФайла);
    }
    мДобавитьФайлы(лТекСтрока.Имя, лТекСтрока)
    
    лТекСтрока.Строки.Сортировать("ЭтоКаталог Убыв, Имя", true)
    
    // Восстановим текущую строку
    лСтрокаНайденная=мФормаСкрипта.ДеревоФайлов.Строки.Найти(лИмяФайлаТекСтроки, "ИмяФайла", true)
    if(лСтрокаНайденная != undefined)