Правим push

This commit is contained in:
Михаил Капелько
2020-07-16 15:48:30 +03:00
parent 1035721a4a
commit 22bd061cb4
6 changed files with 485 additions and 1 deletions

397
пуск|run.js Normal file
View File

@@ -0,0 +1,397 @@
const ИМЯ = "test-cors";
// // // //
Закомитать = function(мир)
{
(async() => {
console.debug("01")
var дата = new Date();
await мир.fs.promises.writeFile(мир.директория + "/abc", дата.toString(), "utf8");
await git.add({
fs: мир.fs,
dir: мир.директория,
filepath: "abc"
});
var sha = await git.commit({
fs: мир.fs,
dir: мир.директория,
message: мир.сообщение,
author: мир.автор,
})
console.debug("commit sha:", sha);
await git.push({
fs: мир.fs,
http: мир.гитHTTP,
dir: мир.директория,
remote: мир.источник,
ref: мир.ветка,
onAuth: function(url) {
var auth = {
"username": мир.пользователь,
"password": мир.пароль,
};
var json = JSON.stringify(auth);
console.debug(`Auth url: '${url}' auth: '${json}'`);
return auth;
},
});
console.debug("закомитали")
})();
};
// // // //
УведомитьОбОшибкеПолученияСпискаФайлов = function(мир)
{
var сообщение = `ОШИБКА Не удалось получить список файлов | ERROR Could not get a list of files ${мир.ошибка}`;
document.body.innerHTML += `<p>${сообщение}</p>`;
console.error(сообщение);
};
// // // //
ВывестиСписокФайлов = function(мир)
{
console.debug("файлы", мир.файлы);
};
// // // //
ПолучитьСписокФайлов = function(мир)
{
(async() => {
try
{
мир.файлы = await мир.fs.promises.readdir(мир.директория);
мир.уведомить("получили список файлов");
}
catch (ошибка)
{
мир.ошибка = ошибка;
мир.уведомить("не получили список файлов");
}
})();
};
// // // //
УведомитьОПерезагрузке = function(мир)
{
var сообщение = `ВНИМАНИЕ Происходит очистка локальной копии Гита с последующей перезагрузкой страницы | WARNING There's a local Git copy cleanup going on with a subsequent page reload ${мир.ошибка}`;
document.body.innerHTML += `<p>${сообщение}</p>`;
console.error(сообщение);
};
// // // //
УведомитьОЗавершенииОбновления = function(мир)
{
console.debug("завершили обновление");
};
// // // //
Перезагрузить = function(мир)
{
setTimeout(
function() {
window.location.reload(false);
},
4000
);
};
// // // //
ОчиститьФайловуюСистему = function(мир)
{
// Очищаем IndexedDB.
мир.fs = new LightningFS(мир.имяФС, { wipe: true });
};
// // // //
ОбновитьХранилище = function(мир)
{
(async() => {
try
{
await git.pull({
fs: мир.fs,
http: мир.гитHTTP,
dir: мир.директория,
url: мир.хранилище,
depth: 1,
username: мир.пользователь,
password: мир.пароль,
author: мир.автор,
});
мир.уведомить("обновили хранилище");
}
catch (ошибка)
{
мир.ошибка = ошибка;
мир.уведомить("не обновили хранилище");
}
})();
};
// // // //
УведомитьОЗавершенииКлонирования = function(мир)
{
console.debug("завершили клонирование");
};
// // // //
СклонироватьХранилище = function(мир)
{
(async() => {
await git.clone({
fs: мир.fs,
http: мир.гитHTTP,
dir: мир.директория,
url: мир.хранилище,
depth: 1,
username: мир.пользователь,
password: мир.пароль,
});
мир.уведомить("склонировали хранилище");
})();
};
// // // //
УведомитьОбОшибкеПодготовкиДиректории = function(мир)
{
var сообщение = `ОШИБКА Не удалось подготовить директорию для хранилища Гит | ERROR Could not prepare a directory for Git repository ${мир.ошибка}`;
document.body.innerHTML += `<p>${сообщение}</p>`;
console.error(сообщение);
};
// // // //
ПодготовитьДиректорию = function(мир)
{
(async() => {
try
{
await мир.fs.promises.mkdir(мир.директория);
мир.уведомить("подготовили директорию");
}
catch (ошибка)
{
мир.ошибка = ошибка;
мир.уведомить("не подготовили директорию");
}
})();
};
// // // //
ПроверитьНаличиеДиректории = function(мир)
{
мир.fs = new LightningFS(мир.имяФС);
(async() => {
try
{
await мир.fs.promises.readdir(мир.директория);
мир.уведомить("директория присутствует");
}
catch (ошибка)
{
мир.ошибка = ошибка;
мир.уведомить("директория отсутствует");
}
})();
};
// // // //
ЗадатьНастройки = function(мир)
{
мир.имяФС = "fs";
мир.пользователь = "root";
мир.пароль = "root";
мир.автор = {
"name": "Михаил Капелько",
"email": "kornerr@gmail.com",
};
мир.ветка = "master";
мир.директория = "/" + мир.ветка;
мир.источник = "origin";
мир.сообщение = "Изменения от isomorphic-git";
мир.хранилище = "https://git.opengamestudio.org/kornerr/isomorphic-git-module-test";
мир.хранилище = "https://git.opengamestudio.org/kornerr/test-cors";
};
// // // //
УведомитьОПускеТеста = function(мир)
{
console.debug("пуск теста");
};
// // // //
/*
// // // //
СоздатьВетку = function(мир)
{
(async() => {
console.debug("01");
await git.checkout({
fs: мир.fs,
dir: мир.директория,
ref: мир.ветка,
});
console.debug("02");
console.log("создали ветку");
мир.уведомить("создали ветку");
})();
};
// // // //
СоздатьВеткуДистанционно = function(мир)
{
(async() => {
console.debug("01")
await git.push({
fs: мир.fs,
http: мир.гитHTTP,
dir: мир.директория,
remote: мир.источник,
ref: мир.ветка,
onAuth: function() {
return {
"username": мир.пользователь,
"password": мир.пароль,
};
},
});
console.debug("02")
console.log("создали ветку дистанционно");
мир.уведомить("создали ветку дистанционно");
})();
};
// // // //
СоздатьВеткуЛокально = function(мир)
{
(async() => {
await git.branch({
fs: мир.fs,
dir: мир.директория,
ref: мир.ветка,
checkout: true,
});
console.log("создали ветку локально");
мир.уведомить("создали ветку локально");
})();
};
// // // //
ПроверитьНаличиеВетки = function(мир)
{
(async() => {
var ветки = await git.listBranches({
fs: мир.fs,
dir: мир.директория,
});
if (ветки.includes(мир.ветка))
{
мир.уведомить("ветка присутствует");
}
else
{
мир.уведомить("ветка отсутствует");
}
})();
};
*/