¿Hay algún buen software que me permita buscar fragmentos de código a través de mi repositorio SVN? Encontré 'Ojo de pez' pero el costo es de 1.200 y está muy por debajo de mi presupuesto.SVN Repository Search
Respuesta
Muchos repositorios SVN son sitios "simplemente" HTTP, por lo que puede considerar buscar en una aplicación de búsqueda "rastreador web" que puede apuntar a la raíz SVN y le dará funcionalidad básica. Actualizarlo probablemente sea un truco, tal vez algún cheque SVN en hackeo puede hacer cosquillas en el índice para descartar o reindexar los cambios sobre la marcha.
Solo pensando en voz alta.
Esto probablemente no sea una buena idea, ya que los gastos generales involucrados serían enormes. Además, los servidores SVN generalmente no son páginas web regulares, sino un servidor svn expuesto a través de webdav. – torkildr
theres krugle y koders, pero ambos son caros. Ambos tienen complementos ide para eclipse.
¿Qué pasa con Krugle Basic? –
me gusta TRAC - este plugin podría ser útil para su tarea: http://trac-hacks.org/wiki/RepoSearchPlugin
esto parece algo prometedor ... pero no demasiado terriblemente fácil de instalar, no puedo confirmar si funciona con Trac + VisualSVN Server. –
Utilizamos http://opensolaris.org/os/project/opengrok/
OpenGrok se ha movido a http://opengrok.github.io/OpenGrok/ ahora. – alanc
Si usted está realmente desesperada, hacer un volcado de la cesión temporal (ver en "svnadmin dump") y luego grep a través de él. No es bonito, pero puede mirar alrededor de los resultados de la búsqueda para encontrar los metadatos que indican el archivo y la revisión, luego verifíquelos para verlos mejor.
No es una buena solución, sin duda, pero es gratis :) SVN no proporciona ninguna función para buscar registros pasados (o incluso archivos de registro pasados, AFAIK).
exageradamente lento (e implementado crudamente), sino una combinación de registro de SVN y svn cat funciona si usted está buscando la historia de archivos individuales o pequeños repositorios:
svn log filetosearch |
grep '^r' |
cut -f1 -d' ' |
xargs -i bash -c "echo '{}'; svn cat filetosearch -'{}'"
dará salida a cada número de revisión, donde cambió archivo y el archivo. Siempre puedes incluir cada revisión en un archivo diferente y luego grep para los cambios.
PS. ¡Votos masivos a cualquier persona que me muestre cómo hacer esto correctamente!
Solo usa 'git-svn'. Git tiene una búsqueda integrada de código en el historial de commits. Pero necesitarás descargar todo el historial de commit para usar 'git-svn'. –
Hay sourceforge.net/projects/svn-search.
También hay una aplicación de Windows directamente desde el hogar SVN llamada SvnQuery disponible en http://svnquery.tigris.org
+1 para svnquery –
Acabo de descargar esto yo mismo - la versión 1.2.2.0 está actualmente disponible. (es decir, fuera de Beta) –
URL de Source Forge nueva para SVN Search: http://svn-search.sourceforge.net/ –
Si está buscando sólo para el nombre del archivo, utilice:
svn list -R file:///subversion/repository | grep filename
de Windows:
svn list -R file:///subversion/repository | findstr filename
De lo contrario, finalizar la compra y hacer la búsqueda del sistema de archivos:
egrep -r _code_ .
Puede no ser del todo obvio, pero estos comandos se aplican a cualquier método de acceso a un servidor svn, no solo archivo: (por ejemplo, svn: y svn + ssh: también funcionan) –
//, ¿Le importaría proporcionar un ejemplo de trabajo para cada uno de ellos? –
OP quería buscar a través de los archivos, no solo los nombres de archivo. el ejemplo de búsqueda del sistema de archivos no es muy útil. – erict
- Crear
git-svn
espejo de ese repositorio. - buscar cadenas añadidas o eliminadas dentro git:
git log -S'my line of code'
o el mismo engitk
La ventaja es que se pueden hacer muchas búsquedas a nivel local, sin cargar la conexión del servidor y la red.
Solo una nota, FishEye (y muchos otros productos de Atlassian) tienen una versión para principiantes de $ 10, que en el caso de FishEye le ofrece 5 repositorios y acceso para hasta 10 committers. El dinero va a la caridad en este caso.
¿Ya no? No veo opciones gratuitas en la página. – bahrep
@bahrep, he actualizado la respuesta, ahora es $ 10 que va a la caridad que es efectivamente "gratis" si lo piensas. –
que empecé a usar esta herramienta
http://www.supose.org/wiki/supose
funciona bien sólo le hace falta una interfaz de usuario visual, pero es rápido y algo mantiene
Hoy en día (agosto de 2012) el proyecto parece haberse estancado ... – anol
En diciembre de 2012 lanzaron algo nuevo (0.7.1) – sendmoreinfo
parece haber desaparecido – fbstj
// Edición: La herramienta ya fue mencionada en otra respuesta, así que déle todos los créditos a Kuryaki.
Acaba de encontrar SupoSE que es una herramienta de línea de comandos basada en Java que escanea un repositorio para crear un índice y luego puede responder a ciertos tipos de consultas. Todavía estamos evaluando la herramienta, pero parece prometedor. Vale la pena mencionar que hace un índice completo de todas las revisiones, incluidos los archivos de código fuente y los formatos de oficina comunes.
Este ejemplo tuberías de todo el contenido del repositorio a un archivo, que luego se puede buscar rápidamente los nombres de archivo dentro de un editor:
svn list -R svn://svn > filelist.txt
Esto es útil si el depósito es relativamente estático y que quiere hacer búsquedas rápidas sin tener que cargar todo repetidamente desde el servidor SVN.
Debo señalar que en mi caso, era necesario utilizar 'http' como el protocolo ('svn list -R http: // repo/svn/etc'). –
downvoted, porque OP quería buscar a través de los archivos, no los nombres de los archivos. El comando svn list solo descarga los nombres de archivo del repositorio. – erict
A partir de Subversion 1.8, you can use --search
option with svn log
command. Tenga en cuenta que el comando no realiza la búsqueda de texto completo dentro de un repositorio, que sólo tiene en cuenta los siguientes datos: autor
- de revisión (
svn:author
propiedad no versionada), - fecha (
svn:date
propiedad no versionada), - registro texto del mensaje (
svn:log
propiedad no versionada), - lista de rutas modificadas (es decir, rutas afectadas por la revisión en particular).
Aquí está la página de ayuda sobre estas nuevas opciones de búsqueda:
If the --search option is used, log messages are displayed only if the
provided search pattern matches any of the author, date, log message
text (unless --quiet is used), or, if the --verbose option is also
provided, a changed path.
The search pattern may include "glob syntax" wildcards:
? matches any single character
* matches a sequence of arbitrary characters
[abc] matches any of the characters listed inside the brackets
If multiple --search options are provided, a log message is shown if
it matches any of the provided search patterns. If the --search-and
option is used, that option's argument is combined with the pattern
from the previous --search or --search-and option, and a log message
is shown only if it matches the combined search pattern.
If --limit is used in combination with --search, --limit restricts the
number of log messages searched, rather than restricting the output
to a particular number of matching log messages.
- 1. git-svn display svn repository url
- 2. SVN Repository Authentication using SharpSVN
- 3. Mirror SVN Repository [Proxying de escritura]
- 4. Nuking huge file in svn repository
- 5. SVN Repository Structure - ¿Por qué es esto mejor?
- 6. XCode4 agregar Repository Host inalcanzable?
- 7. Proximity Search
- 8. TreeView search
- 9. A Repository Factory Class
- 10. Repository Commit Msg Etiquette
- 11. gcc error message repository
- 12. Try Catch in Repository
- 13. git repository cloning logging
- 14. NHibernate and Repository pattern
- 15. Entity Framework 4 Repository?
- 16. Eliminando Git Repository Gitolite?
- 17. Service vs. Repository
- 18. Recomendar Build Artifact Repository Manager
- 19. Auto reflejo Nexus Proxy Repository
- 20. ¿Envuelve automáticamente I-search?
- 21. Elastic Search y "subconsultas"
- 22. IndexedDB Fuzzy Search
- 23. stackoverflow search api
- 24. Mercurial repo search
- 25. Sphinx PHP search
- 26. Global Search En Android
- 27. Ruby Amazon book search
- 28. JavaScript fuzzy search
- 29. Google Analytics Site Search
- 30. Rails Search Plugins & Solutions
¿Es necesario buscar a través de la historia de la cesión temporal? ¿O solo la cabeza? – swilliams
Hay una versión gratuita de FishEye - www.atlassian.com/starter –
@DavidFreitas no hay opciones gratuitas ahora – bahrep