Tabla de contenido
1. Lleve el código de almacén remoto al local como una nueva sucursal temporal local
3. Combinar la nueva rama temporal con la rama maestra local
4. Vuelva a enviar la sucursal maestra local al almacén remoto
Método 4. Cuando no se realiza ninguna confirmación
1. Almacene todos los cambios en la rama actual
3. Aplique el alijo especificado al espacio de trabajo, pero no elimine el alijo
4.2 Almacenar modificaciones de archivos especificados
4.3 Comprobar qué archivos han sido modificados por una pila de inserción
4.4 Ver el contenido modificado del almacenamiento especificado
4.5 Eliminar todo el almacenamiento en caché
Olvídese de extraer el código del almacén remoto, utilice la extracción para informar un error:
error: Your local changes to the following files would be overwritten by merge:
Si no desea que se sobrescriba el código que acaba de escribir, puede resolverlo así:
Método 1: (no verificado)
Si desea conservar el código que acaba de modificar localmente y extraiga el código del servidor git al local (el código que acaba de modificar localmente se archivará temporalmente)
git stash
git pull origin master
git stash pop
De esta manera, el código en el servidor se actualiza localmente y el código que modificó localmente no se sobrescribe.Luego, use el comando add
para actualizar el código local en el servidor.commit
push
Método 2: (verificado)
Si desea cubrir completamente el código local y solo mantener el código del lado del servidor, vuelva directamente a la versión anterior y luego continúe pull
:
git reset --hard
git pull origin master
Nota: donde origin master representa la rama principal de git.
Método 3: Convencional
1. Lleve el código de almacén remoto al local como una nueva sucursal temporal local
git fetch origin master:temp
expandir:
rama git sin parámetros: enumere las ramas que ya existen localmente y agregue una marca "*" delante de la rama actual.
git branch -r enumera las sucursales remotas, por ejemplo:
git branch -a enumera las sucursales locales y remotas, por ejemplo:
git branch -m | -M oldbranch newbranch Cambie el nombre de la rama, si la rama de nombre newbranch ya existe, debe usar -M para forzar el cambio de nombre, de lo contrario, use -m para cambiar el nombre.
2. Compare la rama de esta temporal con nuestra rama principal para ver qué es diferente y cuáles son los conflictos
git diff temp
3. Combinar la nueva rama temporal con la rama maestra local
git merge temp
Si hay archivos en conflicto que no se pueden fusionar automáticamente, debe abrirlos y modificarlos usted mismo. El formato básico del archivo de conflicto es <<<<<<< a ======= es el contenido del archivo antes de fusionar la rama actual, y ======= a >>>>> >> está en otras ramas Para el contenido revisado, debe elegir una de estas dos versiones y luego eliminar los símbolos de marca juntos.
Después de resolver manualmente los conflictos, puede enviar a la sucursal remota.
4. Vuelva a enviar la sucursal maestra local al almacén remoto
git push -u origin master
5. Eliminar sucursal
git branch --delete temp
# 命令删除本地分支
# 这个好像也可以
git branch -D temp //删除本地temp分支
extensión:
Use el comando "git push origin --delete branch" para eliminar la rama remota;
Utilice el comando "git branch --delete --remotes" para eliminar la rama de seguimiento.
Método 4. Cuando no se realiza ninguna confirmación
Por lo general, nos encontraremos con ese escenario. Estamos implementando una función pero no la hemos terminado. En este momento, necesitamos modificar el error. No queremos enviar nuestra modificación ahora para agregar demasiados registros de registro inútiles, pero no podemos regresar si no lo enviamos a este estado. En este momento, puede usar el comando git sta sh para guardar el contenido del espacio de trabajo local y volver al estado posterior a la confirmación anterior.
El siguiente es un pequeño arreglo, primero mire la parte 1-2-3-4 a continuación y luego mire este comando
# 保存当前未commit的代码
git stash
# 保存当前未commit的代码并添加备注
git stash save "备注的内容"
# 列出stash的所有记录
git stash list
# 删除stash的所有记录
git stash clear
# 应用最近一次的stash
git stash apply
# 应用最近一次的stash,随后删除该记录
git stash pop
# 删除最近的一次stash
git stash drop
1. Almacene todos los cambios en la rama actual
git stash save -m "标识注释"
2. Ver el alijo existente
git stash list
3. Aplique el alijo especificado al espacio de trabajo, pero no elimine el alijo
git stash apply 对应stash的名字 # 上面的标识
# 或者
git stash apply stash@{0}
删除则是将apply换成drop
expandir:
De forma predeterminada, git stash almacena en caché los siguientes archivos:
Modificaciones agregadas al área de preparación
Modificaciones rastreadas por Git pero no agregadas al área de preparación
Pero los siguientes archivos no se almacenan en caché:
Archivos que se ignoran para nuevos archivos en el directorio de trabajo
4. Expansión:
4.1 Libere el último contenido guardado y extraiga el contenido guardado de la pila (es decir, saque la parte superior de la pila, libere el último contenido guardado y elimine el contenido guardado)
git stash pop
4.2 Almacenar modificaciones de archivos especificados
git stash push .../.../ .../.../ .../.../
/.../... es la ruta del archivo modificado que desea almacenar. Cuando haya modificado muchos archivos, pero solo desea almacenar algunos archivos modificados, puede agregar la ruta después de git stash push. Si hay varios archivos , simplemente agregue espacios entre estas rutas de archivo
4.3 Comprobar qué archivos han sido modificados por una pila de inserción
Cuando hay demasiadas modificaciones en el almacenamiento, es posible que olvide qué archivos se han modificado en un determinado almacenamiento. Si desea comprobar qué archivos se han modificado en un determinado almacenamiento, puede utilizar git stash show stash@{0} comando, stash@{0} es la modificación almacenada más recientemente, si desea ver otro almacenamiento, solo necesita cambiar el número de stash@{0}, como stash@{5}. Como se muestra en la imagen de arriba , primero uso git stash list para ver la lista de almacenamiento y luego uso el comando git stash show stash@{0} Mirando la primera modificación, puede ver que solo modifiqué un archivo test.txt en la tienda de modificaciones más reciente .
git stash show stash@{0}
4.4 Ver el contenido modificado del almacenamiento especificado
Si desea ver todo el contenido de una modificación oculta, en lugar de solo ver qué archivos se han modificado, por ejemplo, para ver todos los archivos y contenidos de la última modificación oculta, puede usar git stash show -p stash@ {0} comando para ver.
git stash show -p stash@{0}
4.5 Eliminar todo el almacenamiento en caché
git stash clear