Как я могу выдвинуть определенный коммит на удаленный, а не предыдущий коммит?

Я не уверен, что эта функциональность новая, но вы также можете использовать метод get_legend_handles_labels (), а не отслеживать сами строки и метки:

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import rc
rc('mathtext', default='regular')

pi = np.pi

# fake data
time = np.linspace (0, 25, 50)
temp = 50 / np.sqrt (2 * pi * 3**2) \
        * np.exp (-((time - 13)**2 / (3**2))**2) + 15
Swdown = 400 / np.sqrt (2 * pi * 3**2) * np.exp (-((time - 13)**2 / (3**2))**2)
Rn = Swdown - 10

fig = plt.figure()
ax = fig.add_subplot(111)

ax.plot(time, Swdown, '-', label = 'Swdown')
ax.plot(time, Rn, '-', label = 'Rn')
ax2 = ax.twinx()
ax2.plot(time, temp, '-r', label = 'temp')

# ask matplotlib for the plotted objects and their labels
lines, labels = ax.get_legend_handles_labels()
lines2, labels2 = ax2.get_legend_handles_labels()
ax2.legend(lines + lines2, labels + labels2, loc=0)

ax.grid()
ax.set_xlabel("Time (h)")
ax.set_ylabel(r"Radiation ($MJ\,m^{-2}\,d^{-1}$)")
ax2.set_ylabel(r"Temperature ($^\circ$C)")
ax2.set_ylim(0, 35)
ax.set_ylim(-20,100)
plt.show()
750
задан JohnAllen 31 May 2017 в 14:11
поделиться

3 ответа

Я полагаю, что вам придется "git revert" вернуться к этому коммиту, а затем выложить его. Или вы можете отбирать коммит в новую ветку и продвигать его в ветку на удаленном хранилище. Something like:

git branch onecommit
git checkout onecommit
git cherry-pick 7300a6130d9447e18a931e898b64eefedea19544 # From the other branch
git push origin {branch}
12
ответ дан 22 November 2019 в 21:21
поделиться

Я бы предложил использовать git rebase -i ; переместите коммит, который вы хотите отправить, в верхнюю часть сделанных вами коммитов. Затем используйте git log , чтобы получить SHA измененного коммита, проверить его и отправить. Перебазирование будет гарантировать, что все ваши другие коммиты теперь являются дочерними по отношению к тому, который вы нажали, поэтому будущие нажатия также будут работать нормально.

25
ответ дан 22 November 2019 в 21:21
поделиться

Чтобы продвинуть до данный коммит, вы можете написать:

git push <remotename> <commit SHA>:<remotebranchname>

при условии, что уже существует на удалённом сервере. (Если его нет, вы можете использовать git push :refs/heads/ для его автоматического создания).

Если вы хотите продвинуть коммит без продвижения предыдущих коммитов, вам следует сначала использовать git rebase -i для изменения порядка коммитов.

1019
ответ дан 22 November 2019 в 21:21
поделиться
Другие вопросы по тегам:

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