1
0
mirror of https://github.com/1C-Company/GitConverter.git synced 2025-03-29 21:47:04 +02:00

Merge pull request from 1C-Company/features/read-viersion-sha

Возможность хранить в базе SHA коммита для различного анализа по по версиям
This commit is contained in:
Dmitriy Marmyshev 2018-03-31 00:02:58 +03:00 committed by GitHub
commit ef27fef52a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 64 additions and 15 deletions
GitConverter/src
Catalogs/ВерсииХранилища
Forms/ФормаЭлемента
ВерсииХранилища.mdo
CommonModules/КонвертацияХранилища
Configuration

@ -495,17 +495,20 @@
<textEdit>true</textEdit>
</extInfo>
</items>
<items xsi:type="form:Decoration">
<name>Декорация1</name>
<id>89</id>
<items xsi:type="form:FormField">
<name>sha1</name>
<id>97</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
<common>true</common>
</userVisible>
<dataPath xsi:type="form:DataPath">
<segments>Объект.sha1</segments>
</dataPath>
<extendedTooltip>
<name>Декорация1РасширеннаяПодсказка1</name>
<id>91</id>
<name>sha1РасширеннаяПодсказка</name>
<id>99</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@ -519,8 +522,8 @@
</extInfo>
</extendedTooltip>
<contextMenu>
<name>Декорация1КонтекстноеМеню1</name>
<id>90</id>
<name>sha1КонтекстноеМеню</name>
<id>98</id>
<visible>true</visible>
<enabled>true</enabled>
<userVisible>
@ -528,11 +531,18 @@
</userVisible>
<autoFill>true</autoFill>
</contextMenu>
<type>Label</type>
<autoMaxHeight>true</autoMaxHeight>
<horizontalStretch>true</horizontalStretch>
<extInfo xsi:type="form:LabelDecorationExtInfo">
<horizontalAlign>Left</horizontalAlign>
<type>InputField</type>
<editMode>Enter</editMode>
<showInHeader>true</showInHeader>
<headerHorizontalAlign>Left</headerHorizontalAlign>
<showInFooter>true</showInFooter>
<extInfo xsi:type="form:InputFieldExtInfo">
<autoMaxWidth>true</autoMaxWidth>
<autoMaxHeight>true</autoMaxHeight>
<wrap>true</wrap>
<chooseType>true</chooseType>
<typeDomainEnabled>true</typeDomainEnabled>
<textEdit>true</textEdit>
</extInfo>
</items>
<items xsi:type="form:FormField">

@ -2,7 +2,9 @@
<mdclass:Catalog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="9193d044-7a2c-4ea3-9506-aa5792b3adca">
<producedTypes>
<objectType typeId="0be0e430-6a6c-45f4-9956-e35c0cd8225f" valueTypeId="97fc4c14-38da-4589-9e02-706c86fdd947"/>
<refType typeId="5d57556f-455a-4478-894b-2ed04c8498d5" valueTypeId="96238d66-15d7-4c4e-81d0-ad7d9b11f8e6"/>
<refType typeId="5d57556f-455a-4478-894b-2ed04c8498d5" valueTypeId="96238d66-15d7-4c4e-81d0-ad7d9b11f8e6">
<emptyRef/>
</refType>
<selectionType typeId="95507071-1584-4986-ad6d-29ad084e61e7" valueTypeId="e7135a89-52d8-46d3-b0c1-0255924591e8"/>
<listType typeId="783fb521-0549-4ceb-abff-4c9214ca8eb7" valueTypeId="120b62bd-f67f-4b1f-908c-6e326ff76da5"/>
<managerType typeId="c23f5e70-26a3-40b8-a1f5-2fb3133818fc" valueTypeId="699eb534-6408-4be5-81c2-85284628762d"/>
@ -341,6 +343,26 @@
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<attributes uuid="8bf28297-9380-4434-8b3e-7c402b561dfc">
<name>sha1</name>
<synonym>
<key>ru</key>
<value>Sha1</value>
</synonym>
<comment></comment>
<type>
<types>String</types>
<stringQualifiers>
<length>40</length>
</stringQualifiers>
</type>
<toolTip>
<key>ru</key>
<value>SHA1 коммита версии в Git, заполняется автоматически при помещении версии в репозиторий.</value>
</toolTip>
<fullTextSearch>Use</fullTextSearch>
<dataHistory>Use</dataHistory>
</attributes>
<tabularSections uuid="e384f3de-6d17-4ca9-aeca-1862aaf10be0">
<producedTypes>
<objectType typeId="6275aa89-a315-4d55-b16d-907c074a032e" valueTypeId="0bfa8f28-8d78-493d-b663-32aa6d4a331c"/>

@ -736,7 +736,24 @@
ЗапуститьПриложение(?(ЭтоWindowsСервер, "", "bash ")
+ ИмяФайлаКомандыGit, РеквизитыХранилища.ЛокальныйКаталогGit, Истина);
Справочники.ВерсииХранилища.УстановитьСостояние(ВерсияХранилища, Перечисления.СостоянияВерсии.ВерсияПомещена);
SHAКоммита = "";
ИмяФайлаSHA = ПолучитьИмяВременногоФайла("txt");
ЗапуститьПриложение("git rev-parse HEAD > " + ИмяФайлаSHA, РеквизитыХранилища.ЛокальныйКаталогGit, Истина);
ФайлSHA = Новый Файл(ИмяФайлаSHA);
Если ФайлSHA.Существует() Тогда
ТекстФайлаSHA = Новый ТекстовыйДокумент();
ТекстФайлаSHA.Прочитать(ИмяФайлаSHA);
SHAКоммита = СокрЛП(ТекстФайлаSHA.ПолучитьТекст());
КонецЕсли;
Объект = ВерсияХранилища.ПолучитьОбъект();
Если Объект <> Неопределено И (Объект.Состояние <> Перечисления.СостоянияВерсии.ВерсияПомещена
ИЛИ ЗначениеЗаполнено(SHAКоммита) И Объект.sha1 <> SHAКоммита) Тогда
Объект.Состояние = Перечисления.СостоянияВерсии.ВерсияПомещена;
Объект.sha1 = SHAКоммита;
Объект.Записать();
КонецЕсли;
Объект = Хранилище.ПолучитьОбъект();
Объект.ВерсияВGit = ВерсияХранилища;
Объект.Записать();

@ -54,7 +54,7 @@
<objectAutonumerationMode>NotAutoFree</objectAutonumerationMode>
<modalityUseMode>DontUse</modalityUseMode>
<synchronousExtensionAndAddInCallUseMode>DontUse</synchronousExtensionAndAddInCallUseMode>
<compatibilityMode>8.3.10</compatibilityMode>
<compatibilityMode>8.3.11</compatibilityMode>
<languages uuid="ed426b54-96a4-48ad-95c4-9e10c774ca73">
<name>Русский</name>
<synonym>