• Git что-то говорит, как убрать?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Гит не просто «что-то говорит», а конкретно сообщает что вы находитесь в состоянии незаконченного перебазирования и сообщает «как убрать».
    Вы должны либо продолжить и довести перебазирование до конца
    git rebase --continue
    Либо отменить процесс через
    git rebase --abort

    Я бы на вашем месте как раз отменил, так как вы делаете что-то странное. Сначала дропнули из истории один коммит, потом попытались применить его отмену и скорее всего получили сложный конфликт. Что вообще пытаетесь добиться?

    Если вы, не осознав что rebase ещё не закончился, продолжили добавлять новые коммиты, то тогда завершите rebase. А потом смотрите что получилось.
    Ответ написан
  • Может ли физ лицо создавать интернет-проекты?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Создавать сайт не запрещено, и на это не нужно никаких специальных разрешений, получения лицензий или ещё каких-то бессмысленных телодвижений. Это же не медицинская деятельность, производство продуктов питания, строительство или банковское дело.

    Квалификация данных как персональных очень разнообразна, в некоторых странах под них подапают IP-адреса, электронная почта, куки итд. Также сложно сказать, что именно решит судья в тех случаях, когда сайт будет ответчиком или иной стороной в судебном деле. В России так особенно сложно.

    Для того, чтобы не получать формальных претензий от властей разных стран (в первую очередь ЕС, который требует соблюдать GDPR и другие нормативные акты по отношению к своим гражданам безотносительно места предоставления им услуг), сейчас много кто начал показывать на всякий случай предупреждение о куках и выкладывать формальную политику конфиденциальности (которая всё равно по большому счёту декларация о намерениях). Публиковать свои собственные личные данные в ней необязательно. Достаточно просто указать в ней адрес электронной почты или ссылку на онлайн-форму для связи, с помощью которой можно обратиться с запросом на удаление данных. Ну и стандартные ля-ля об использовании электронной почты для предоставлению пользователю дополнительных услуг, требующих его идентификации и всё такое.

    Кроме того, в некоторых случаях политика конфиденциальности требуется не для соответствия законам, а по правилам тех или иных сайтов и сервисов. Например, для прохождения review приложения в Facebook у него обязательно должна быть опубликована политика конфиденциальности. Когда мне потребовалось пройти этот квест (по работе), я взял текст с сайта своей компании и немного отредактировал, даже гуглить примеры не потребовалось.
    Ответ написан
    Комментировать
  • Для чего изучать линукс?

    @Drno
    если нет задачи - незачем и изучать.
    а в целом - на линукс работает не менее 70% всего что ты видишь в интернете, сайты,сервисы,почта, конвертеры видео \ аудио итд итп...
    на линукс работают роутеры, прокси-серверы, VPN серверы... итд итп
    Ответ написан
    Комментировать
  • Для чего изучать линукс?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В рамках импорто-замещения РФ скоро откажется от Windows.
    Тогда специалисты по Linux будут восстребованы везде.

    Вот главный мотиватор. Хочешь иметь работу завтра - изучай Линуха сегодня.
    Ответ написан
    4 комментария
  • В каком конфигурационном файле настраиваются сетевые интерфейсы в Ubuntu, Debian, CentOS?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    По-разному. Где-то консервативный /etc/network/interfaces, где-то netplan, где-то networkmanager. Гуглите для конкретной версии дистрибутива.
    Ответ написан
    1 комментарий
  • Почему замена строк местами не работает на большом документе?

    wisgest
    @wisgest
    Не ИТ-специалист
    (Не очень понятно, в чём состоит «открытие файла на чтение»: по моему, просто присваивается значение одной переменной другой.)

    Вероятно, не хватает памяти для переменных окружения.
    Можно не запоминать все строки, а прочитать три первых, вывести их в нужном порядке, а затем выводить строки, не запоминая их, в новый файл и удалить старый.

    Первые три строки можно получить так:
    (
    set /p "s1="
    set /p "s2="
    set /p "s3="
    ) <input.txt

    Вывести содержимое файла, начиная с четвёртой строки можно, например, с помощью утилиты more:
    more +3 input.txt >>output.txt
    или
    more +3 <input.txt >>output.txt

    А в целом:
    (
    set /p "s1="
    set /p "s2="
    set /p "s3="
    echo !s3!
    echo !s2!
    echo !s1!
    more
    ) <input.txt >output.txt
    del input.txt
    ren output.txt input.txt

    В этом случае, возможно, вместо
    more
    для перехвата оставшихся строк будет лучше
    find /v ""
    Ответ написан
    3 комментария
  • Как перенаправить весь трафик с хоста на виртуалку pfsense на хосте, чтобы использовать pfsense как личный шлюз?

    @Strabbo
    Если они в одной сети, то на хосте в качестве шлюза по умолчанию пропишите айпи pfsense-а.
    Ответ написан
    2 комментария
  • Будет ли работать Интернет без света, если он идёт через распределительную коробку?

    @Drno
    Если приходит витая пара, то…
    Если провайдер аоставил на свои свитчи бесперебойники, и если Вы воткнете свой роутер в бесперебойник - то да, инет будет, при отключении дома от питания

    У меня в доме так происходит
    Ответ написан
    Комментировать
  • Будет ли работать Интернет без света, если он идёт через распределительную коробку?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Был бы ваш провайдер беспроводным - так бы работало. А так - нужно запитать Ваш роутер, свитч на техэтаже (чердаке) здания, свитч на чердаке здания, куда приходит аплинк от Вашего здания и т.д. вплоть до свитча на здании провайдера (такая очень обобщенная схема).
    Как видим, в схеме очень много узлов и отключение одного из них - это отвал всех, кто в структуре "ниже".
    Ответ написан
    Комментировать
  • Почему socket работает только в локальной сети? Как это исправить?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Дело в том, что пока ваши устройства в одной подсети (им выдал адреса один DHCP сервер, это обычно ваш роутер), вы, указав локальный IP другого устройства в сокете, можете создать соединение.
    Но если устройства в разных локальных сетях, между которыми не настоен никакой роутинг, то устройства не смогут видеть друг друга. Их адреса будут в разных адресных пространствах.
    Это как звонить внутри отеля по внутреннему номеру телефона. Если один из абонентов окажется в другом отеле, то, даже зная его внутренний номер, вы из первого отеля не дозвонитесь ему напрямую по короткому номеру. Придётся пользоваться шлюзом. Вот шлюз - это NAT.
    Тут дальше аналогия уже поплывёт, если ещё глубже пытаться её применять.
    Прочитайте что такое NAT, что такое белый IP, динамический и статический IP, что такое port-forwarding, сетевая модель OSI, что такое маска подсети и как устроен IP-адрес, как происходит маршрутизация.
    Это слишком много инфы, чтобы рассказывать вам об этом в ответе на один вопрос. Вам нужно изучать это самостоятельно.
    Ответ написан
    3 комментария
  • Как выводить числа на семисегментный дисплей в Microprocesor Simulator 5v32?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    цифра три на левой части дисплея имеет код 9Е и чтобы вывести результат сложения 1 + 2 мне надо 3 как-то преобразовать в 9Е

    Типовое решение этой задачи -- через таблицу преобразования, где индекс -- это то, что нужно отобразить, а содержимое -- это то, что нужно записать в порт для отображения. Для вывода цифр от 0 до 9 и вашего дисплея таблица будет такой:
    0xfa, 0x0a, 0xb6, 0x9e, 0x4e, 0xdc, 0xfc, 0x8a, 0xfe, 0xde
    .
    Ответ написан
    1 комментарий
  • Как сохранить значения нескольких переменных в С++ 17?

    Adamos
    @Adamos
    #include <iostream>
    #include <vector>
    
    using namespace std;
    
    int getInfo(const char* message) { 
        int value = 0;
        cout << message;
        cin >> value;
        return value;
    };
    int weightLoss(int normal_weight, int weight) { // здесь мы просто определяем на сколько нужно "похудеть"
        int result = normal_weight - weight;
        return result;
    };
    int main() {
        cout << "Это программа для опреределения, нужно ли вам похудеть." << endl;
        int normal_weight = getInfo("Введите оптимальный ваш вес в кг: ");
        int weight = getInfo("Введите нынешний вес в кг: ");
        if (weight > normal_weight) {
            int result = weightLoss(normal_weight, weight);
            cout << "Вам необходимо похудеть на " << result << " кг";
        };
    };
    Ответ написан
    Комментировать
  • Почему Doom портируют куда только можно?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Doom - это была одна из первых игр где была реализована в полной мере техника BSP (Binary-Space-Partition). Это позволяло в реальном времени очень быстро сортировать и рендерить полигоны без привлечения Z-Buffer. (Рендеринг был чисто прогарммный. На то время еще не было ускорителей 3Д графики и видеокарточка умела только отображать память на экран. ) Игра не была по настоящему трехмерной. А только рализовывала 1 этаж. Рендерить надо было только пол и потолок. Для каждой точки где стоял персонаж. И наклонных горизонтальных поверхностей в ней не было как раз по этой причине. Ее называли 2.5-мерной игрой. Было также много идей оптимизации вычислений. Например вместо вещественных чисел - целые 32х битные с fixed point.

    В скобках замечу что это был 1993 год и на дворе было царство Intel 286/386. Это были машины с тактовой частотой меньше ваших телефонов (Pentium только только релизнулся и еще ни у кого не был). И трехмерный Doom был прорывом. На моем тогда еще 386SX от подтормаживал но играть было можно. И со звуком для SoundBlaster. И конечно это было лучше чем Wolfenstein.

    Аналогичное было реализовано в Duke Nukem 3d. Но Дюк был менее популярен ИМХО. Были и масса других 3д игр в жанке RPG но они были не такие динамичные. Походовые в основном.

    Вобщем сегодня если вы гейм-дев то вам желательно хотя-бы ознакомиться с техниками оптимизации которые были в Doom. Можно почитать и про Quake но это просто развитие идеи BSP деревьев для полного 3D с 5 или 6 степенями свободы. Еще можно почитать про реализацию игры Esctatica. Там не на полигонах а на шариках или эллипсах реализована игровая графика. Тоже интересно.

    UPD: Заменил MMORPG на RPG.
    Ответ написан
    6 комментариев
  • Как открыть папку в проводнике используя bat-файл?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Ну во-первых, "Рабочий стол" - это в реальности директория "Desktop".
    Во-вторых арнумент "" не нужен, указывайте директорию первым аргументом.
    В-третих
    "%SystemRoot%\explorer.exe" "C:\Users\vern1\Desktop"
    сработает, а вот по поводу специально-витуальной директории OneDrive - сильно сомневаюсь...
    Ответ написан
    1 комментарий
  • Почему не выводится двумерный массив?

    @serhiops
    Python/JavaScript/C++
    Таке ж завдання виконував на останній лабораторній роботі.
    #include<iostream>
    #include<clocale>
    #include<iomanip>
    using namespace std;
    
    #define COLS 4
    
    int main(int argc, char** argv)
    {
        setlocale(LC_ALL, "Ukrainian");
        int w[][COLS] = {
            {1, 3, -8, 0},
            {-4, 6, 2, -5},
            {3, 7, 0, 6},
            {-3, 9, 11, -2}
        };
        cout << "Поточна матриця\n";
        for (int i{0}; i < COLS; ++i)
        {
            for (int j{0}; j < COLS; ++j)
                cout<< showpos <<w[i][j]<< setw(5);
            cout << '\n';
        }
    
        cout << "\nПеретворена матриця\n";
        for (int i{0}; i < COLS; ++i)
        {
            for (int j{0}; j < COLS; ++j)
            {
                if (w[i][j]>0 && w[i][j] < 6)
                    w[i][j] = 0;
                cout<< showpos <<w[i][j]<< setw(5);
            }
            cout << '\n';
        }
        return 0;
    }
    Ответ написан
    Комментировать
  • Как выделить память в другой функции, передавая pointer через аргументы?

    wataru
    @wataru
    Разработчик на С++, экс-олимпиадник.
    В вашем случае логичнее возвращать указатель на вделенную память.

    Если уж очень надо через аргументы, то передавайте указатель на указатель:
    static void update_callback(char **ptr)
    {
        *ptr = (char *)malloc(sizeof(char) * TEST_STR_SIZE + 1);
    ...


    P.s. В вашем коде утечка памяти. Вы выделяете память, потом единственный указатель на эту память переписываете указателем на TEST_STR.
    Ответ написан
    6 комментариев
  • Адреса сети, ip адреса?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Адрес подсети и адрес роутера от которого идет эта сеть - это одно и тоже?

    Нет.

    Адрес сети - это вообще IPадрес или это просто номер?

    Это IP-адрес.

    Под что уходят адреса 192.168.1.0 и 192.168.1.255 и 192.168.1.256 при маске 255.255.255.0

    192.168.1.0 - адрес подсети;
    192.168.1.255 - адрес бродкаста подсети;
    192.168.1.256 - не существует.
    Ответ написан
    Комментировать
  • Что не так с функцией на C++?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    error C2835: user-defined conversion 'operator`double'' takes no formal parameters

    Он говорит тебе о том, что такая перегрузка: operator double (int limit) невозможна. Вторая ошибка -- это следствие первой.

    Определим в объекте Group две функции с одинаковым именем, например double Age(); и double Age(int limit);.

    Так бы и сделал, зачем оператор для этого перегружать?
    Ответ написан
    Комментировать
  • Может ли слетать активация MS Office, если теряется связь с сервером KMS?

    @SunTechnik
    KMS активация действует 180 дней. Автоматические попытки переактивации будут проводится до наступления этого срока.
    Ответ написан
    1 комментарий