Russian Qt Forum
Апрель 26, 2024, 00:21 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Запрос от github с консоли на логи и пароль и вывод в GUI  (Прочитано 5021 раз)
SektorCT
Частый гость
***
Offline Offline

Сообщений: 216


Просмотр профиля
« : Август 11, 2016, 16:48 »

Всем привет.
Если кто устанавливал UnrealEngine4 из исходников то знают что нужно иметь регистрацию.
Когда мы находясь в каталоге куда будем заливать движок ввоодим git clone https://github.com/EpicGames/UnrealEngine.git
получаем запрос на логин и пароль который у нас имеется по регистрации.
Возможно ли сделать этот запрос данных через GUI? То есть в код будет жостко вшит адресс и когда мы нажимаем скачать то появляется приглашение ввода.
Просто ради эксперимента хочу сделать это через юзерскую гуятину.
Если кто знает то подскажите или может с примером или в какие виджеты копать.
Еще хотел добавить что весь консольный вывод скачивания движка и установки думал выводить так же как консольно только на виджет.
Заранее спасибо.
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #1 : Август 11, 2016, 20:40 »

У меня на ту ссылку пишет 404 ошибку. Либо нет ресурса, либо это приватный репозиторий и доступ к нему имеет только определенное лицо
Записан

Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #2 : Август 11, 2016, 21:28 »

есть вариант запрашивать юзера и пароль, и потом клонить сразу с заданным юзером и паролем, см. http://stackoverflow.com/a/10054470 . Это не безопасно, т.к. пароль будет виден в списке процессов.
Записан
SektorCT
Частый гость
***
Offline Offline

Сообщений: 216


Просмотр профиля
« Ответ #3 : Август 12, 2016, 02:00 »

У меня на ту ссылку пишет 404 ошибку. Либо нет ресурса, либо это приватный репозиторий и доступ к нему имеет только определенное лицо

А вы прочитали что я написал? При подключении нужно вводить логин и пароль. А это значит что вы должны быть там авторизованы.
Записан
SektorCT
Частый гость
***
Offline Offline

Сообщений: 216


Просмотр профиля
« Ответ #4 : Август 12, 2016, 02:03 »

есть вариант запрашивать юзера и пароль, и потом клонить сразу с заданным юзером и паролем, см. http://stackoverflow.com/a/10054470 . Это не безопасно, т.к. пароль будет виден в списке процессов.

Спасибо за ссылку. Вот только вопрос остается, как это именно применить?( Я вот честно даже представления не имею как это в код вшить...
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #5 : Август 12, 2016, 03:26 »

У меня на ту ссылку пишет 404 ошибку. Либо нет ресурса, либо это приватный репозиторий и доступ к нему имеет только определенное лицо

А вы прочитали что я написал? При подключении нужно вводить логин и пароль. А это значит что вы должны быть там авторизованы.

Виноват Улыбающийся Попытаюсь реабилитироваться Смеющийся

Как Alex Custov и писал, вам нужно запустить в консоли команду, в которой помимо репозитория указывается логин и пароль.
Для гита это:
Код
Bash
git clone https://username:password@github.com/username/repository.git

Если перевести в код, то получится примерно такое. // <login> и <pass> заменить своим логином и паролем
Код
C++ (Qt)
#include <QWidget>
#include <QPushButton>
#include <QVBoxLayout>
#include <QDebug>
 
class Widget : public QWidget
{
   Q_OBJECT
 
   public:
       Widget(QWidget *parent = 0) {
           auto button = new QPushButton("Get Clone Now!");
           connect(button, QPushButton::clicked, this, [=](){
               qDebug() << "Get clone start.";
 
               system("git clone https://<login>:<pass>@bitbucket.org/<login>/combustion.git");
 
               qDebug() << "Get clone finished.";
           });
 
           auto layout = new QVBoxLayout();
           layout->addWidget(button);
 
           setLayout(layout);
       }
};

Если хотите работу с консольным гитом более по qt-шному, то поможет QProcess.
« Последнее редактирование: Август 16, 2016, 23:31 от gil9red » Записан

Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.081 секунд. Запросов: 22.