ver tag modificados log example ejemplo archivos and git git-pull git-status

git - tag - error: los siguientes archivos del árbol de trabajo sin seguimiento se sobrescribirían al finalizar la compra



git tag (3)

Cuando hago el git status no dice nothing to commit, working directory clean

Y luego hago git pull --rebase , dice:

First, rewinding head to replay your work on top of it... error: The following untracked working tree files would be overwritten by checkout: includes/resources/moduledata/12/_Fr4_02_Invention_IPA_SR_la-Fête.pdf Please move or remove them before you can switch branches. Aborting could not detach HEAD

Error similar al hacer git pull origin master

* branch master -> FETCH_HEAD error: The following untracked working tree files would be overwritten by merge: includes/resources/moduledata/12/_Fr4_02_Invention_IPA_SR_la-Fête.pdf Please move or remove them before you can merge. Aborting

Mi archivo .gitignore :

→ cat .gitignore .htaccess bower_components/

Este archivo ha estado apareciendo constantemente y cuando lo elimino del sistema de archivos, git dirá que eliminé este archivo, mientras que en los otros mensajes, dice que no está rastreado. ¿Cómo podría no ser rastreado y rastreado al mismo tiempo?



Sin una imagen completa del repo, lo que sigue es más una suposición que otra cosa, pero podría explicar la situación. Digamos que su historia se ve como sigue:

A -- C [origin/master] / B [HEAD, master]

Usted escribe:

Este archivo ha estado apareciendo constantemente y cuando lo elimino del sistema de archivos, git dirá que eliminé este archivo, mientras que en los otros mensajes, dice que no está rastreado.

Supongo que puedes haber corrido

git rm --cached <file-in-question>

y cometió que la eliminación en cometer B ; por lo tanto, el archivo ya no se rastrea en su repositorio local y aún está presente en su árbol de trabajo.

Mientras tanto, la rama ascendente recibió el commit C de uno de sus colaboradores, en el que <file-in-question> no se eliminó del control de versiones. Lo que estás intentando hacer con

git pull --rebase

es algo como esto:

A -- C [origin/master] / B'' [HEAD, master]

Sin embargo, como dice el mensaje,

El árbol de trabajo no [...] rastreado [archivo] se sobrescribiría al finalizar la compra

De hecho, si se rebobina el commit C (para reproducir B encima de él), se obtendrá una revisión de <file-in-question> (de commit C ) que se desprotegerá en su árbol de trabajo, en el que se mostrará un archivo sin seguimiento del archivo. Ya existe el mismo nombre. El contenido de ese archivo sin seguimiento puede ser valioso; es posible que no desee que otro archivo sobrescriba ese archivo. Por lo tanto, Git se detiene en su pista y le dice qué está mal.

Edición : Aquí hay un ejemplo de bebé que reproduce la situación ...

cd ~/Desktop mkdir test cd test git init touch README.md git add README.md git commit -m "add README" # simulate a remote branch moving ahead by one commit # (that doesn''t remove the README) git checkout -b origin_master printf "This is a README./n" > README.md git add README.md git commit -m "add description in README" # remove the README and create a new commit on master git checkout master git rm --cached README.md git commit -m "remove README" # simulate an attempt to rebase master to its "upstream" branch, origin_master git rebase --onto origin_master master

Ese último comando arroja lo siguiente:

First, rewinding head to replay your work on top of it... error: The following untracked working tree files would be overwritten by checkout: README.md Please move or remove them before you can switch branches. Aborting could not detach HEAD

Te sugiero que corras

git fetch git log --stat origin/master..master -- <file-in-question>

para comprobar si algo así sucedió.


Eliminar todos los archivos sin seguimiento (cuidado):

git clean -d -fx ""