Внесение изменений в программу Wireshark

wireshark

Репозиторий исходного кода программы Wireshark расположен по адресу https://code.wireshark.org/review.

  1. Клонируем репозиторий следующей командой.
    git clone https://code.wireshark.org/review/wireshark
  2. Вносим какое-нибудь изменение в код.
  3. В папке проекта собираем программу следующими командами.
    ./autogen.sh
    ./configure
    make
  4. ./configure может выдать ошибку при неудовлетворенной зависимости и завершиться. Удовлетворяем зависимость и снова запускаем.
  5. Запускаем программу следующей командой.
    ./wireshark
  6. Проверяем, что внесенные изменения работают.
  7. Регистрируемся на сайте репозитория.
  8. В папке проекта добавляем в файл .git/config следующие строчки.
    [gerrit]
        createchangeid = true
  9. Делаем коммит и убеждаемся, что в конец комментария коммита автоматически вставилась строчка
    Change-Id: Icdd39166059c080e7844968219f2a8f387c587a6
    только с другим кодом.
  10. В настройках на сайте репозитория генерируем пароль.
    code.wireshark.org settings HTTP password
  11. Отправляем изменения в удаленный репозиторий следующей командой.
    git push origin HEAD:refs/for/master
  12. При этом вводим логин и пароль, который сгенерировали.
  13. Если все прошло успешно, то ваш коммит появится в списке коммитов ожидающих ревью. Остается только дождаться утверждения коммита.

Ссылки

Красивая разница в Git для файла проекта Qt

Обычно, при добавлении файлов в проект Qt, разница файла проекта (*.pro) в Git выглядит следующим образом.

bad-diff-in-git-qt-pro

Добавили всего 2 файла foo3.h и foo3.cpp, а получили 6 изменений.

Разницу можно сделать намного симпатичней, если в конце каждого файла добавлять слеш, а в конце каждого списка комментарий # END.

good-diff-in-git-qt-pro

Получается при добавлении двух файлов всего 2 изменения.

Такой способ требует полуручного редактирования файла проекта.

Слияние независимых репозиториев в Git

Git без проблем позволяет слить два разных проекта в один.

tree-of-merge-different-projects-in-git

Сделать это очень просто.

  1. Делаем резервные копии репозиториев, если они не синхронизированы с серверов.
  2. В первом репозитории добавляем внешний репозиторий, в качестве которого указываем путь ко второму репозиторию. Путь может быть локальным или к репозиторию на сервере.
  3. Подкачиваем второй репозиторий.
  4. Если вы работаете в Git Gui, то добавляем метку к ветки второго репозитория.
  5. Производим слияние веток первого и второго репозитория. В Git Gui для этого нужно использовать метку.

Устранение ошибки проверки правописания в Git Gui на Ubuntu

При запуске Git Gui на Ubuntu 16.04, пользователь может получить следующую ошибку:

Проверка правописания не доступна: No word lists can be found for the language «ru_Ru»

Есть два способа ее устранения.

  1. Установить пакет Aspell.
    sudo apt install aspell-ru
    
  2. Настроить проверку правописания через меню «Редактировать -> Настройки…».

Интеграция Git в файловый менеджер Ubuntu 16.04

RabbitVSC

Читать далее Интеграция Git в файловый менеджер Ubuntu 16.04

Интеграция Git Gui в контекстное меню Thunar

Чтобы Git Gui можно было запустить из контекстного меню Thunar:

  1. в меню «Правка» выберите «Особые действия»,
  2. в появившемся окне создайте действие,
  3. введите имя действия «Git Gui» и команду «cd %f; git gui»,
  4. на вкладке «Условия появления» выберите только «Каталоги».