tipos tag sirve remove qué para oneline nos log hace existen etiquetas cuando creamos commits commands git git-svn

tag - git-svn: no se puede configurar la información de seguimiento; punto de partida no es una rama



¿para qué nos sirve el sha-1 cuando creamos tags? (4)

En SourceTree, simplemente quite la casilla marcada con "la sucursal local debe rastrear la rama remota".

En git 1.7.9.5 podría ejecutar las siguientes líneas sin error:

export SVNPASS=readonly git clone [email protected]:dtenenbaum/RGalaxy.test.git cd RGalaxy.test/ git config --add svn-remote.hedgehog.url https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/RGalaxy git config --add svn-remote.hedgehog.fetch :refs/remotes/hedgehog # the following is a shortcut to avoid fetching every commit since antiquity, since I happen to know the commit number # where this folder was added to svn: echo $SVNPASS | git svn fetch --username readonly hedgehog -r 65762:HEAD git checkout -b local-hedgehog -t hedgehog

En git 1.8.3.4 y 1.8.4.1, la última línea da como resultado:

fatal: Cannot setup tracking information; starting point ''hedgehog'' is not a branch.

Los comentarios a esta pregunta sugieren una degradación, pero me gustaría saber por qué sucede esto: ¿es un error? Y si es así, ¿se ha informado? ¿O hay una mejor manera de hacer esto y, si es así, qué es?

Por cierto, "git branch -a" devuelve:

* master remotes/hedgehog remotes/origin/HEAD -> origin/master remotes/origin/master


Esto no es considerado como un error por los desarrolladores de git-svn. De hecho, este es el resultado de una corrección de errores en v1.8.3.2. Configurar tu local local-hedgehog para rastrear el local-hedgehog de git-svn ya no funcionará.

A partir de ahora, simplemente haciendo.

git checkout -b hedgehog remotes/hedgehog

es suficiente para poder realizar todas las operaciones habituales de git-svn ( git svn rebase , git svn dcommit , etc.).

Aquí está la explicación de Johan Herland:

Antes de v1.8.3.2, este tipo de trabajo sigue funcionando (como se observa a continuación), porque el código no se da cuenta de que el control remoto no es válido y vuelve a configurar branch.feat-bar.remote = "." (Es decir, el repositorio actual). Esto podría parecer una práctica aceptable hasta que te des cuenta de que un "empujón de git" de vuelta a ese flujo ascendente no válido felizmente sobrescribiría refs / remotes / (mirror /) feat-bar, y por lo tanto rompería el estado interno de git-svn.

Este error se corrigió en v1.8.3.2, más específicamente 41c21f22 (branch.c: Valide las ramas de seguimiento con refspecs en lugar de refs / remotes / *), y puede leer más sobre la razón en ese mensaje de confirmación.

El resultado final para usted es que ya no se aceptará la configuración de su barra de dote local para seguir la barra de dote de git-svn una vez que actualice a> = v1.8.3.2. La forma correcta de configurar una rama de barra de proeza local para que funcione en la parte superior de la barra de barra de git-svn es, en cambio, renunciar a la relación ascendente y simplemente hacer "git checkout -b feat-bar refs / remotes / (mirror /) feat -bar".

Si quieres más detalles, te sugiero leer todo su post .


Estoy usando esto: git branch --set-upstream remotes / git-svn