tipos tag remove practices etiquetas create crear best git git-checkout git-add

remove - git tags best practices



Cómo hacer ''git checkout--theirs'' para varios archivos(o todos los archivos no combinados) (4)

Esto revisa todos los archivos sin combinar sin especificar el directorio:

git ls-files --unmerged | perl -n -e''//t(.*)/ && print "$1/n"'' | uniq | xargs -r git checkout --theirs --

Source

Digamos que tengo esto después de intentar una combinación y al ingresar al git status :

# Unmerged paths: # (use "git add/rm <file>..." as appropriate to mark resolution) # # added by them: myfile1.xhtml # added by them: myfile2.xhtml # added by them: myfile3.xhtml

... y sé que quiero hacer esto para cada uno de esos archivos:

git checkout --theirs myfile1.xhtml git add myfile1.xhtml

... pero hay muchos de ellos. ¿Cómo podría hacerlos como un lote?


La solución para mi caso terminó siendo simplemente usar un comodín en la ruta del directorio, ya que los archivos se agruparon:

git checkout --theirs directory_name/* git add directory_name/*


Puede usar los siguientes comandos para verificar múltiples archivos en una ruta no combinada

git checkout --theirs `git status | grep "added by them:" | awk ''{print $NF}''`

Ejecuta el siguiente comando para cometer los archivos anteriores.

git commit `git status | grep "added by them:" | awk ''{print $NF}''`


Si sus archivos son más profundos que un directorio (es decir, hay subdirectorios) y desea seleccionar selectivamente todos their archivos para un directorio, use lo siguiente:

grep -lr ''<<<<<<<'' directory_name/ | xargs git checkout --theirs git add directory_name/*

(desde esta pagina )