Searching history using opengrok - opengrok

i have been working on OPENGROK for searching through my SVN code repository. It requires a checked out version of the repository to index it.
I have been able to achieve is searching through the repository when i have checked out version on my system.
Where i am stuck is when i try to search through History of the repository . i am not getting any help on it.
Can anyone suggest me what to do.
More over if i want to update the indexes instead of creating new ones all the time how to achieve it.
Any contribution will be a huge help to me.
Thanks for your time and help.

Which version of opengrok are you using ? There are two ways opengrok can show history information
If opengrok and subversion are installed on the same local server OR
If you have opengrok version > 0.7, history from a remote svn can be fetched as well.
Reference:
Note: A local CVSROOT (or SVN if opengrok version less than 0.7) repository must be available. File history will not be fetched from a remote server for CVS (& SVN if opengrok version less than 0.7) !.
https://github.com/OpenGrok/OpenGrok/wiki/How-to-install-OpenGrok
Update 1: One more thing to verify
The shell script "OpenGrok" in the bin directory would have an option called "OPENGROK_REMOTE_REPOS_OFF". Check that it should be blank in the script.

Related

TortoiseHg 3.6.3 broke mercurial keyring?

I upgraded to Tortoise 3.6.3 yesterday and now I am prompted every time I pull or push a repo. The keyring is set properly, and my user name is in the url.
Any ideas on what may be wrong? Did 3.6.3 break keyring?
Issue 4401 "mercurial_keyring always asks for user/password" from time of 3.6.2 closed as pure extension-specific and contains solution: don't use username in URL anymore
Here is what to put into .hg/hgrc:
[auth]
default.username=myname
default.prefix=http://myrepo
A good way to debug issues like this is to run merciural from the command line with the debug flag, as in:
hg pull --debug
This will clearly indicate if there are problems getting the repo, user name, and password.
UPDATE: A new version of TortoiseHG has been released (3.8.3 at the time of writing) and fixes this issue: upgrading to latest version should be enough.
I had this exact same problem and found the following investigation article to be quite helpful to better understand what't going on (I'm not the author, BTW).
To cut it short, it seems a bug of the mercurial_keyring extension v1.0.1, introduced in TortoiseHG 3.6.2, which also appears to be fixed in v1.1.1.
If you're into Python compiling, it should be possible to upgrade it manually into TortoiseHG by getting it from its official bitbucket repo, compile it and manually place it into TortoiseHG's /lib/library.zip file (backup it beforehand might be wise): if you're not, you have 2 options:
1) clone the bitbucket repo to your HDD and then configure your Mercurial installation to use the new version of that extension module by writing the following in your C:\Users\USERNAME\mercurial.ini file (which was what I did):
[extensions]
mercurial_keyring = /path/to/mercurial_keyring/mercurial_keyring.py
(Notice: you might also have to put the path in your PATH or PYTHONPATH env variable, depending if you already have Python and/or Mercurial installed on your machine).
2) wait for the next TortoiseHG release that will contain the updated version.

How to use execute mysqldiff utilities in command line?

I have two versions of my database. The n and n+1 version. I want to know the difference between the two version. I have downloaded the archive on the link mysqldiff utility
I unzip my archive and went in the bin directory, then i type mysqldiff -help. But at my surprise, i have the following message. mysqldif is not recognozed as command line. Is there any way to install it ?
Thanks
Well, if you read the INSTALL file in the link you gave, it doesn't say to download the archive, it says to install via CPAN.
However, I'm not sure why you'd use a CPAN module or some random Github archive when MySQL distributes a mysqldiff.exe [1] tool itself.
[1] http://dev.mysql.com/downloads/utilities/
I'm the author of that ancient CPAN module and I don't really maintain it any more. It looks like another mysqldiff is offered in the MySQL Utilities suite which seems to be maintained (here's a github clone) and also a lot more sophisticated, so I'd recommend trying that.

Using IntelliJ 11 Community Edition with Mercurial

I am using IntelliJ 11 Community Edition for a project that is in Mercurial (but not at the root of the repository). I integrated the project with Mercurial in the VCS menu, and all the options are now available. However, they don't seem to do anything. The only thing that seemed to do anything is to pull from the server. It doesn't show changed files, commit doesn't do anything. When I deleted a file I got this error message:
hg remove --after src/stats/KolmogorovSmirnovStatistic.java
abort: repository /home/ga1009/PhD/cpp/pmi/java not found!
the root of the repository is /home/ga1009/PhD. How can I get it configured?
I am using Debian Linux is it is relevant.
I raised a ticket on the official site and got a solution that seems to work:
Go to Settings | Version Control and map the repository root to the
Mercurial VCS.
Looks like Mercurial is supported in the community edition:
http://www.jetbrains.com/idea/features/editions_comparison_matrix.html?IC
Sorry, I use Subversion. But when I do, I have to check out the project from Subversion in order to get a working copy. Did you do that with Mercurial? Or are you working with your original files?
I'd do this:
Back up your original source. God forbid you should lose a repository named "PHD".
Check the code into Mercurial. Make sure you can see it in the browser.
Blow away your original source.
Open IntelliJ and check out from Mercurial.
You should be able to see changes added to the change list as you work.
I had to edit the .idea/vcs.xml file to get it working.
The VcsDirectoryMappings needs to read something like:
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="hg4idea" />
</component>

Updating a mercurial webserver

I have a server running mercuial 1.7.2 and want to upgrade to the newest version. What is the best way to go about deploying a new version? Do I need to recopy the templates folder and mercurial folder for python?
Generally speaking, you can simply replace your installed Mercurial with a new version and have it work.
old CGI and WSGI scripts are all forward-compatible and you don't need to update them
you shouldn't need to update config files
new Mercurial versions will read and write old repositories without issue
The only thing you need to worry about is if you've modified the stock web templates, in which case you'll want to back them up and restore them.
See this page for other notes on upgrading:
https://www.mercurial-scm.org/wiki/UpgradingMercurial

m2eclipse on windows with Mercurial does not allow hg to be used on the "Check out Maven Projects from SCM" wizard

I followed the answer from this posting:
How to use Mercurial, Maven and Eclipse together?
But the "Check out Maven Projects from SCM" still does not allow me to use Mercurial SCM.
The only option I get is "svn" in the dropdown, and even if I ignore the drop down and enter in "scm:hg:http://myMercurialRepoURL"
I'm using:
Eclipse 3.6.1
m2eclipse 0.12 from http://m2eclipse.sonatype.org/sites/m2e
"Maven SCM handler for Subclipse" 0.12.0 from m2eclipse extra's site (sorry, I would give the URL, but my new account doesn't have enough rep)
MercurialEclipse 1.8.1 from http://cbes.javaforge.com/update
And I've uninstalled, and reinstall those plugins in that order.
I'm able to use Maven in projects, and use Mercurial separately in Eclipse - it's just this one Wizard that seems to be broken, which leads me to believe that if I try to Materialize an Artifact from a Mercurial repo that it will also fail.
Has anyone had any luck with this Wizard? Perhaps on earlier versions? Is this a new bug?
Thanks
As far my search went, I didn't get to find a suitable connector for mercurial and m2eclipse (in terms of only using IDE). However, I did an experiment wherein I cloned a copy of the source from outside the IDE. (via TortoiseHg specifically)
Afterwards, assuming you have already m2e installed in Eclipse:
Go to File > import > maven > existing maven projects, then select the folder where you've originally pulled/cloned your source code.
I believe by doing so, you'll see the m2e commands in the project's context menu (via run as), and effective use mercurial commands. (via team context menu)
At least for now, this is better not using m2e and mercurial at the same time.
If anyone has a more streamlined approach, I'm also curious. :D