как вы продвигаете только некоторые из ваших локальных коммитов git?

Вы должны быть в состоянии добавить событие @change="onChange()" к вашему средству выбора даты. Кроме того, поскольку у вас есть v-model для каждого средства выбора даты, значения this.date и this.date2 должны быть всегда актуальными. Затем в функции onChange вы сможете получить доступ к this.date и this.date2 и выполнить там вычисление разницы дат.

Если вы добавите одно и то же @change="onChange()" к обоим средствам выбора даты, тогда вычисление разницы дат будет выполнено при изменении любого из них.

p.s убедитесь, что вы получаете доступ к своим данным с помощью this.propertynamehere

140
задан Dom 29 June 2016 в 05:06
поделиться

3 ответа

Принятие Ваших фиксаций находится на основном ответвлении, и Вы хотите продвинуть их к удаленному основному ответвлению:

$ git push origin master~3:master

Если Вы использовали мерзавца-svn:

$ git svn dcommit master~3

В случае мерзавца-svn Вы могли также использовать HEAD~3, так как он ожидает фиксацию. В случае прямого мерзавца необходимо использовать имя ответвления, потому что ГОЛОВА не оценена правильно в refspec.

Вы могли также проявить более длительный подход:

$ git checkout -b tocommit HEAD~3
$ git push origin tocommit:master

При создании привычки к этому типу потока операций необходимо рассмотреть выполнение работы в отдельном ответвлении. Затем Вы могли сделать что-то как:

$ git checkout master
$ git merge working~3
$ git push origin master:master

Обратите внимание, что "источник master:master" часть является, вероятно, дополнительным для Вашей установки.

177
ответ дан 23 November 2019 в 23:15
поделиться

То, что я делаю, работать над локальным ответвлением, названным "работой". Это ответвление содержит все временные фиксации (как обходные решения или частные опции сборки или безотносительно), что я не намереваюсь продвинуть в восходящий репозиторий. Я работаю далеко над тем ответвлением, затем когда я хочу фиксировать, я переключаюсь на основное ответвление, избирательно подхожу к выбору соответствующих фиксаций, которые я действительно хочу фиксировать, затем продвинуть ведущее устройство.

После получения по запросу изменений от восходящего потока в мое основное ответвление, меня git checkout work и git rebase master. Это переписывает все мои локальные изменения, чтобы быть в конце истории.

Я на самом деле использую git svn с этим рабочим процессом, таким образом, моя операция "нажатия" включает git svn dcommit. Я также использую tig который является хорошим текстовым режимом gui средство просмотра репозитория, чтобы избирательно подойти к выбору соответствующих фиксаций ведущему устройству.

16
ответ дан 23 November 2019 в 23:15
поделиться

По умолчанию git-push выталкивает все ветви. Когда вы делаете это:

 git checkout HEAD~3  #set head to three commits ago
 git push #attempt push from that head

Вы переходите к отдельному HEAD (вы не находитесь ни в одной ветке), а затем отправляете все ветки, включая локальный мастер (который все еще находится там, где он был), на удаленный мастер.

Ручное решение:

 git push origin HEAD:master

Если вы находите поведение по умолчанию, состоящее в том, что выталкивание всех веток сбивает с толку (и опасно!), Добавьте это в свой ~ / .gitconfig:

 [remote.origin]
    push = HEAD

Тогда будет выталкиваться только ветка, в которой вы находитесь. В вашем примере (отделенная голова) вы получили бы это сообщение об ошибке, а не случайно нажали неправильные коммиты:

 error: unable to push to unqualified destination: HEAD
14
ответ дан 23 November 2019 в 23:15
поделиться
Другие вопросы по тегам:

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