Управление Apple Music / iTunes из другого приложения, работающего на том же ПК

Интерактивная rebase с --autosquash - это то, что я часто использую, когда мне нужно исправлять предыдущие, фиксирует глубже в истории. Это существенно ускоряет процесс, который иллюстрирует ответ ZelluX, и особенно удобен, когда у вас есть несколько коммитов, которые вам нужно отредактировать.

Из документации:

--autosquash

Когда сообщение журнала фиксации начинается с «squash! ...» (или «fixup! ...»), и есть фиксация, название которой начинается с того же ..., автоматически изменяет список дел rebate -i, так что фиксация, помеченная для раздачи, появляется сразу после модификации фиксации

Предположим, что у вас есть история, которая выглядит так:

$ git log --graph --oneline
* b42d293 Commit3
* e8adec4 Commit2
* faaf19f Commit1

и у вас есть изменения, которые вы хотите внести в Commit2, затем выполните свои изменения с помощью

$ git commit -m "fixup! Commit2"

, иначе вы можете использовать commit-sha вместо сообщения commit, поэтому "fixup! e8adec4 или даже префикс сообщение фиксации.

Затем инициируйте интерактивную rebase на фиксации до

$ git rebase e8adec4^ -i --autosquash

, который откроет ваш редактор с уже правильно упорядоченными коммитами

pick e8adec4 Commit2
fixup 54e1a99 fixup! Commit2
pick b42d293 Commit3

все, что вам нужно сделать, это сохранить и выйти [/ g1 0]

-1
задан Laureant 15 January 2019 в 18:01
поделиться

1 ответ

Ответ на вопрос: «Могу ли я автоматизировать ...» - - да .

iTunes - это DACP -совместимый музыкальный проигрыватель ( https://en.wikipedia.org/wiki/Digital_Audio_Control_Protocol ).

Существует множество реализаций DACP сообществом, но главный недостаток заключается в том, что:

Протокол DACP - это 100% RESTful-HTTP-вызовы, которые должны быть реверсивно спроектированы с помощью «сниффинга». связь между Itunes и Apple Remote. Это утомительная задача каждый раз, когда Apple что-то меняет, хотя бы малейшим образом, отдельным разработчикам предстоит проделать большую работу.

Достойный пример того, как это делается: https://github.com/scott-t/iMote

Однако для того, чтобы скомпилировать и запустить его вам нужно заполнить ссылки, и если вы не хотите скомпилировать для фреймворка 3.5, вам нужно заменить часть кода. С другой стороны, используемый Zeroconf также поддерживает асинхронные вызовы .net core и .

На темных сторонах серого у вас есть возможность декомпилировать приложение, которое, как вы знаете, уже делает это. Популярными декомпиляторами .net являются ILSpy и ReSharper.

0
ответ дан Margus 15 January 2019 в 18:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: