Phpstorm commit failed with error



PhpStorm не может подписать git commit. Почему?

Коммиты подписываются gpg. При попытке сделать коммит (или мерж-коммит, как на скрине) с помощью gui в PhpStorm выходит ошибка:

gpg failed to sign the data
failed to write commit object

В логах PhpStorm:

2021-10-07 12:32:35,737 [8688771] INFO — 4idea.branch.GitMergeOperation — starting
2021-10-07 12:32:35,737 [8688771] INFO — 4idea.branch.GitMergeOperation — next repository: \\wsl$\Ubuntu-20.04\home\user\projects\*********скрыл**********
2021-10-07 12:32:35,797 [8688831] INFO — #git4idea.commands.GitHandler — [*********скрыл**********] git -c core.quotepath=false -c log.showSignature=false merge master
2021-10-07 12:32:35,837 [8688871] INFO — #git4idea.commands.GitHandler — error: gpg failed to sign the data
2021-10-07 12:32:35,837 [8688871] INFO — #git4idea.commands.GitHandler — fatal: failed to write commit object
2021-10-07 12:32:35,857 [8688891] INFO — 4idea.branch.GitMergeOperation — Unknown error. <128>

Предполагаю, это из-за того, что PhpStorm не может отобразить форму для ввода пароля.

При этом, если буду комитить через консоль PhpStorm, отлично работает:

Так же, если в консоли ввести пароль, например:
echo «test» | gpg —clearsign

Откроется сессиия, и в PhpStrom можно будет какое-то время пользоваться gui git. Пока не закроется сессия, чтобы нужно было ввести заново пароль.

Еще замечание, что такая ошибка возникает для проектов, которые расположены внутри файловой системы WSL. Если проект будет на хостовой Windows, подпись работает штатно.

Конфигурация git:

Windows 10 pro.
PHPStorm 2021.2.2

> wsl —list —verbose
Ubuntu-20.04 Running 2

Почему возникает какая ошибка? Как починить?

Источник

PhpStorm не может подписать git commit. Почему?

Коммиты подписываются gpg. При попытке сделать коммит (или мерж-коммит, как на скрине) с помощью gui в PhpStorm выходит ошибка:

gpg failed to sign the data
failed to write commit object

В логах PhpStorm:

2021-10-07 12:32:35,737 [8688771] INFO — 4idea.branch.GitMergeOperation — starting
2021-10-07 12:32:35,737 [8688771] INFO — 4idea.branch.GitMergeOperation — next repository: \\wsl$\Ubuntu-20.04\home\user\projects\*********скрыл**********
2021-10-07 12:32:35,797 [8688831] INFO — #git4idea.commands.GitHandler — [*********скрыл**********] git -c core.quotepath=false -c log.showSignature=false merge master
2021-10-07 12:32:35,837 [8688871] INFO — #git4idea.commands.GitHandler — error: gpg failed to sign the data
2021-10-07 12:32:35,837 [8688871] INFO — #git4idea.commands.GitHandler — fatal: failed to write commit object
2021-10-07 12:32:35,857 [8688891] INFO — 4idea.branch.GitMergeOperation — Unknown error. <128>

Предполагаю, это из-за того, что PhpStorm не может отобразить форму для ввода пароля.

При этом, если буду комитить через консоль PhpStorm, отлично работает:

Так же, если в консоли ввести пароль, например:
echo «test» | gpg —clearsign

Откроется сессиия, и в PhpStrom можно будет какое-то время пользоваться gui git. Пока не закроется сессия, чтобы нужно было ввести заново пароль.

Еще замечание, что такая ошибка возникает для проектов, которые расположены внутри файловой системы WSL. Если проект будет на хостовой Windows, подпись работает штатно.

Конфигурация git:

Windows 10 pro.
PHPStorm 2021.2.2

> wsl —list —verbose
Ubuntu-20.04 Running 2

Почему возникает какая ошибка? Как починить?

Источник

Resolve conflicts

Depending on your version control system, conflicts may arise in different situations.

When you work in a team, you may come across a situation when somebody commits changes to a file you are currently working on. If these changes do not overlap (that is, changes were made to different lines of code), the conflicting files are merged automatically. However, if the same lines were affected, your version control system cannot randomly pick one side over the other, and asks you to resolve the conflict.

Conflicts may also arise when merging, rebasing or cherry-picking branches.

Non-Distributed Version Control Systems

When you try to edit a file that has a newer version on the server, PhpStorm informs you about that, showing a message popup in the editor: In this case, you should update your local version before changing the file, or merge changes later.

If you attempt to commit a file that has a newer repository version, the commit fails, and an error is displayed in the bottom right corner telling you that the file you are trying to commit is out of date.

The failed commit behavior is regulated by the Create changelist on failed commit list in the Version Control | Confirmation page of the Settings dialog.

If you synchronize a file that already has local changes with a newer repository version committed by somebody else, a conflict occurs. The conflicting file gets the Merged with conflicts status. The file remains in the same changelist in the Local Changes view, but its name is highlighted in red. If the file is currently opened in the editor, the filename on the tab header is also highlighted in red.

Distributed Version Control Systems

Under distributed version control systems, such as Git and Mercurial, conflicts arise when a file you have committed locally has changes to the same lines of code as the latest upstream version and when you attempt to perform one of the following operations: pull, merge, rebase, cherry-pick, unstash, or apply patch.

If there are conflicts, these operations will fail, and you will be prompted to accept the upstream version, prefer your version, or merge the changes manually:

The Conflicts dialog is triggered automatically when a conflict is detected on the Version Control level.

If you click Close in this dialog, or call a Git operation that leads to a merge conflict from command line, a Merge Conflicts node will appear in the Local Changes view with a link to resolve them:

PhpStorm provides a tool for resolving conflicts locally. This tool consists of three panes:

The left page shows the read-only local copy

The right pane shows the read-only version checked in to the repository

The central pane shows a fully-functional editor where the results of merging and conflict resolving are displayed. Initially, the contents of this pane is the same as the base revision of the file, that is, the revision from which both conflicting versions are derived.

Resolve conflicts

Click Merge in the Conflicts dialog, the Resolve link in the Local Changes view, or select the conflicting file in the editor and choose VCS | | Resolve Conflicts from the main menu.

To automatically merge all non-conflicting changes, click ( Apply All Non-Conflicting Changes ) on the toolbar. You can also use the ( Apply Non-Conflicting Changes from the Left Side ) and ( Apply Non-Conflicting Changes from the Right Side ) to merge non-conflicting changes from the left/right parts of the dialog respectively.

To resolve a conflict, you need to select which action to apply (accept or ignore ) to the left (local) and the right (repository) version, and check the resulting code in the central pane:

You can also right-click a highlighted conflict in the central pane and use the commands from the context menu. The Resolve using Left and Resolve using Right commands provide a shortcut to accepting changes from one side and ignoring them from the other side respectively:

For simple conflicts (for example, if the beginning and the end of the same line have been modified in different file revisions), the Resolve simple conflicts button that allows merging the changes in one click becomes available.

Such conflicts are not resolved with the Apply All Non-Conflicting Changes action since you must make sure that they are resolved properly.

Note that the central pane is a fully-functional editor, so you can make changes to the resulting code directly in this dialog.

It may also be useful to compare different versions to resolve a conflict. Use the toolbar button to invoke the list of options. Note that Base refers to the file version that the local and the repository versions originated from (initially displayed in the middle pane), while Middle refers to the resulting version.

Review merge results in the central pane and click Apply .

Productivity tips

You can configure PhpStorm to always apply non-conflicting changes automatically instead of telling it to do so from the Merge dialog. To do this, select the Automatically apply non-conflicting changes option on the Tools | Diff Merge page of the IDE settings Ctrl+Alt+S .

Manage changes in the central pane

You can manage changes in the central pane using the toolbar that appears when you hover the mouse cursor over a change marker in the gutter, and then click it. The toolbar is displayed together with a frame showing the previous contents of the modified line:

For example, when there are multiple non-conflicting changes, and you only need to skip one or two of them, it’s easier to apply all of them simultaneously using the Apply all non-conflicting changes action, and then undo the unwanted ones using the Revert action from this toolbar.

Источник

Почему я получаю сообщение «Commit failed with error: pathspec. не соответствует никаким файлам?»?

У меня возникают проблемы с Git.

У меня есть репозиторий, где я могу без проблем зафиксировать любой файл. Тем не менее, есть один файл «Funder.php», который, когда я пытаюсь совершить, сообщает мне, что есть ошибка:

Я совершенно новичок в этом, так было интересно, может ли кто-нибудь помочь?

Это ошибка, которую вы получаете при попытке запустить

но еще не был поставлен; Другими словами, Git пока не сказано об этом. Скорее всего, это происходит здесь. Run

затем попытайтесь зафиксировать.

Причина этой ошибки указана в этом сообщении: qaru.site/questions/50387/.

Решение:
Переименуйте файл обратно в исходное, затем переименуйте его на другое имя, затем вернитесь к тому, у которого есть правильная заглавная. Git больше не будет бросать ошибку.

У меня была такая же проблема в Android Studio после переименования некоторых действий. Я попытался добавить (git добавить) и переместить (git mv) файлы, но так и не помог, и я получал одно и то же сообщение снова и снова.

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

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

Вот краткий ответ на самый быстрый способ решить эту проблему. Подобно сообщению @cmbind55, но к точке.

Проблема: Я добавил файл, который позже переименовал.

Решение:

    Отменить добавление старого имени файла

git reset HEAD oldFileName.file

Теперь добавьте новое имя файла

git add newFileName.file

Обязательно и будьте счастливы.

У меня была такая же проблема. просто измените «Исходные одиночные кавычки комментариев» на двойные кавычки «»

У меня был этот неудачный сценарий фиксации из-за переименованного каталога.

Это был исходный каталог с ошибкой капитализации:

В среде IDE я согласился добавить этот файл в существующий репозиторий git.
В более позднем тестировании я обнаружил, что у меня возникла проблема с вопросом с учетом капитализации «Шаблоны». В среде IDE я просто переименовал каталог в «шаблоны» (изменен на нижний регистр). Я не записывал фактическую последовательность событий вокруг этого, но позже, когда мой коммит завершился с сообщением, у меня возникло подозрение, что это была эта проблема. По-видимому, IDE не полностью справилась с этим случаем переименования каталога.

Сообщение об ошибке фиксации IDE:

Ошибка коммита с ошибкой: pathspec «application/templates/lists/index.html» не соответствует ни одному файлу, известный как git.

После некоторого чтения моя стратегия заключалась в том, чтобы вернуть файл и снова добавить его. Я заблокировал подозрительный файл

Примечание. git статус показывал только каталог здесь. Не файл.

Затем я добавил обратно исправленное имя каталога (я использовал только путь для добавления, следуя примеру git).

После этого мое совершение преуспело. Я не уверен, что это был идеальный метод, но он разрешил ошибку фиксации в моем случае.

Источник

Читайте также:  Invalid format error message
Оцените статью
toolgir.ru
Adblock
detector