Как мне & ldquo; мерзавец винить & rdquo; удаленная строка?

Он работает:

Из соображений безопасности в Firefox и Opera вы не можете запускать щелчок по вводу файла, но вы можете имитировать с помощью MouseEvents:

<script>
click=function(element){
    if(element!=null){
        try {element.click();}
        catch(e) {
            var evt = document.createEvent("MouseEvents");
            evt.initMouseEvent("click",true,true,window,0,0,0,0,0,false,false,false,false,0,null);
            element.dispatchEvent(evt);
            }
        }
    };
</script>

<input type="button" value="upload" onclick="click(document.getElementById('inputFile'));"><input type="file" id="inputFile" style="display:none">
445
задан mikemaccana 15 August 2016 в 12:47
поделиться

1 ответ

Для изменений, скрытых в фиксациях слияния

, фиксациям Слияния автоматически скрыли их изменения от вывода журнала мерзавца. И кирка и обратная вина не нашли изменение. Таким образом, строка, которую я хотел, была добавлена и позже удалена, и я хотел найти слияние, которое удалило ее. История файла git log -p -- path/file только показала тому, чтобы он был добавленным. Вот лучший способ, которым я нашел для нахождения его:

git log -p -U9999 -- path/file

Поиск изменения, затем ищите назад "^commit" - первый "^commit" является фиксацией, где файл в последний раз имел ту строку. Второй "^commit" - после того, как он исчез. Вторая фиксация могла бы быть той, которая удалила ее. Эти -U9999 предназначен для показа всего содержания файла (после того, как каждый раз файл был изменен), предполагая, что файлы являются всеми макс. 9 999 строками.

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

git log --merges --pretty=format:"git diff %h^...%h | grep target_text" HEAD ^$(git merge-base A B) | sh -v 2>&1 | less

(я пытался ограничить пересмотр, фильтруют больше, но я столкнулся с проблемами, и не рекомендуйте это. Добавить/удаление изменения, которые я искал, были на различных ответвлениях, которые были объединены в в разное время и A... B не включал, когда изменения на самом деле были объединены в магистраль.)

Шоу дерево мерзавца с этими 2 фиксациями (и много сложной удаленной истории мерзавца):

git log --graph --oneline A B ^$(git merge-base A B) (A первая фиксация выше, B является второй фиксацией выше)

Выставочная история A и история B минус история и A и B.

Альтернативная версия: (кажется, показывает путь более линейно, а не регулярное дерево истории мерзавца - однако я предпочитаю регулярное дерево истории мерзавца):

git log --graph --oneline A...B

3 не 2 точки - 3 точки означает "r1 r2 - не $ (основа слияния мерзавца - весь r1 r2). Это - набор фиксаций, которые достижимы или от одного из r1 (левая сторона) или от r2 (правая сторона), но не от обоих". - источник: "человек gitrevisions"

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

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