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

tf.Operation представляет узел графа и выполняет вычисления на тензорах. tf.constant возвращает специальный вид tf.Operation, который принимает 0 тензоров в качестве входных данных и производит 0 тензоров в качестве выходных, поскольку он не выполняет вычислений.

Хотя tf.Variable фактически является вложенной операцией (или подграфом), состоит из 3 узлов. Дважды щелкните переменную подграфа на тензорной доске, и вы увидите: enter image description here

Он начинается с константы (например, initial_value, которая выделена), записывает свое значение в память устройства и читает значение, чтобы накормить его потребителям.


РЕДАКТИРОВАТЬ для вопроса в комментарии:

Насколько я понимаю, когда пользователи вызывают этот метод, скажем, a = tf.constant([1, 2, 3], name='input_a'), две вещи будут происходить в разных аспектах:

    [1112 ] узел Const будет добавлен в граф вычислений, как вы можете видеть на 3-м изображении, которое вы предоставили. Его точное значение известно во время построения графа, но (я полагаю) его нельзя вызвать в базовой реализации. Таким образом, тензорная доска говорит, что этот узел не имеет входов и выходов . Возможно, этот узел похож на указатель, указывающий на соответствующую память устройства со своим значением, ожидая, пока другие вызываемые узлы найдут его.
  1. a Constant Tensor будет возвращено , и вы можете использовать его позже, используя его обработчик a, например, c = tf.multiply(a, b, name="mul_c") как и вы.

Таким образом, « return » означает возврат обработчика в Python методом Python, в то время как « выводит » (в графе вычисления тензорного потока) перечисляет всех потребителей вызываемого узла. выход.

6
задан Jonathan Leffler 13 August 2011 в 19:13
поделиться

2 ответа

Я только что попробовал это:

rm -rf clone?

# clone 1 is the working copy
mkdir clone1
(
    cd clone1
    git init
    echo foo >> file1
    git add file1
    git commit -m "Initial state"
)

# clone 2 is the staging repo
git clone clone1 clone2

# create patches
(
    cd clone1
    git tag staging # tag to track what's in staging

    echo feature1 >> file1
    git add file1
    git commit -m "Feature 1"

    echo feature2 >> file1
    git add file1
    git commit -m "Feature 2"

    rm *.patch
    git format-patch staging
)

# apply patches
(
    cd clone2
    git am ../clone1/*.patch
    # Cygwin/msysgit line ending weirdness when patching. Aborting and
    # reapplying clears it up.
    git am --abort 
    git am ../clone1/*.patch
    git log
    git status
)

Имеет незначительную проблему с нечетким применением патчей без двойного выполнения am, но я получаю чистый рабочий каталог в клоне 2 с нужным содержимым из файла1. Так что, похоже, в вашем рабочем процессе нет ничего плохого.

Git apply будет только обновлять рабочее дерево, а не выполнять фиксацию.

Тем не менее, я не буду использовать репозиторий git для поэтапного размещения. Мой рабочий процесс, вероятно, сделал бы ветку релиза / ветку репозитория разработки (или нет) и просто развернул бы полные чистые копии этого.

Для инкрементных обновлений промежуточной среды просто используйте git tag staging в ветке релиза, «git diff staging..HEAD> update.patch» для отправки по электронной почте и стандартный unix «patch -p1 «применить это должно работать.

5
ответ дан 16 December 2019 в 21:46
поделиться

Did you try a

git am -3 

? From the git-am doc,

-3
--3way

When the patch does not apply cleanly, fall back on 3-way merge

Note: From Git Google Summer of Code 2009, there is a project to "Teach git-apply the 3-way merge fallback git-am knows":

When git-apply patches file(s) the files may not patch cleanly. In such a case git-apply currently rejects the patch.
Если он вызывается из git-am , то выполняется трехстороннее слияние:

  • извлекают данные «index ...» из патча и
  • создают временное дерево,
  • применяя к этому патч, затем
  • сливаем временное дерево с текущей веткой.

По разным причинам было бы неплохо сделать весь танец временного дерева непосредственно внутри git-apply, так как это может быть полезно, скажем, Команда git-sequence «apply», ускоряет обработку git-am, меньше разветвляется и т. д.

3
ответ дан 16 December 2019 в 21:46
поделиться
Другие вопросы по тегам:

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