[1] http://stackoverflow.com/questions/18998025/ssl-handshake-failed-ssl-error-key-usage-violation-in-certificate-has-been-det
[2] https://www.visualsvn.com/support/topic/00056/
sudo apt-get install libneon27
cd /usr/lib
sudo rm libneon-gnutls.so.27
sudo ln -s /usr/lib/libneon.so.27 libneon-gnutls.so.27 (double check that symbolic link is created)
Another way is to upgrade SVN client to latest SVN 1.8.xx which already handles http/https access.
Reasons behind this [2]
GnuTLS library is an alternative to OpenSSL. Most Subversion clients for Windows are built against OpenSSL and are not affected by this issue. While some Subversion packages (available mostly on Linux-based operating systems such as Ubuntu and Debian) are built against GnuTLS and are affected.
Showing posts with label Revision Control. Show all posts
Showing posts with label Revision Control. Show all posts
Sunday, September 27, 2015
Saturday, August 24, 2013
Git vs Mercurial vs SVN
[1] http://stackoverflow.com/questions/1218471/for-home-projects-can-mercurial-or-git-or-other-dvcs-provide-more-advantages
[1] I use git on personal projects to sort of "collaborate with myself." I have repositories on a linux box on my home network that's accessible via a tunnel from anywhere. I then will clone it to my home desktop, my laptop, maybe a machine at work, and I can see it or work on it anywhere I go. I can commit changes, get the latest, and have backups in various places. It's very nice the ease and speed with which git allows you to switch branches. Found a bug? Switch to 'master', fix it, commit, push, then switch back to what you're doing. Easier and faster than cvs or subversion.
Also, I use git a lot for small directories that aren't even projects. The config directory for the apache server hosting my web site is git'd, and likewise the tomcat config directory for the same web site.
I use it at work for everything, even though at work we're on CVS moving to Subversion. I don't use git-cvs or git-svn, I just use git alongside either product, and keep my branches local. Very handy to be able to switch to another developer's latest commit, check something, then switch back.
Then, of course, there's bisect, which can be a huge help, for work or home projects.
Also, if at work they're still using punch cards, cvs, or subversion, then using git at home is a great way to stay current, and find out for yourself the impact it can have.
I don't get excited about technologies unless they bring something genuinely new to the table. Git does. I'm a fan. You probably figured that out already.
Mercurial Version Control Tool
[1] http://en.wikipedia.org/wiki/Mercurial
[2] http://mercurial.selenic.com/
[2] http://mercurial.selenic.com/
Mercurial is a cross-platform, distributed revision control tool for software developers. It is mainly implemented using the Python programming language, but includes a binary diff implementation written in C. It is supported on Windows and Unix-like systems, such as FreeBSD, Mac OS X andLinux. Mercurial is primarily a command line program but graphical user interface extensions are available. All of Mercurial's operations are invoked as arguments to its driver program hg, a reference to the chemical symbol of the element mercury.
Mercurial's major design goals include high performance and scalability, decentralized, fully distributed collaborative development, robust handling of both plain text and binary files, and advanced branching and merging capabilities, while remaining conceptually simple.[3] It includes an integrated web interface. Mercurial has also taken steps to ease the transition for SVN users.
The creator and lead developer of Mercurial is Matt Mackall. Mercurial is released as free software under the terms of the GNU GPL v2 (or any later version[4]).
Monday, March 4, 2013
SVN Notes
[1] Thegeekstuff svn-command-examples
Ref
Removing files from SVN repo to synch with local folder
Ref
Removing files from SVN repo to synch with local folder
svn rm $( svn status | sed -e '/^!/!d' -e 's/^!//' )Adding files from local folder into SVN repo for unversioned files
svn add --force * --auto-props --parents --depth infinity
$ svn checkout/co URL PATH
$ svn co https://www.thegeekstuff.com/project/branches/release/migration/data/cfg /home/sasikala/cfg/
A /home/sasikala/cfg/ftp_user.cfg
A /home/sasikala/cfg/inventory.cfg
A /home/sasikala/cfg/email_user.cfg
A /home/sasikala/cfg/svn-commands
Checked out revision 811.
$ ls /home/sasikala/cfg
. .. .svn email_user.cfg ftp_user.cfg inventory.cfg svn-commands
$ svn commit -m "log messages" $ cat /home/sasikala/cfg/svn-commands checkout commit add delete update status $ ls -l /home/sasikala/cfg/svn-commands -rw-r--r-- 1 root root 41 Apr 16 11:15 svn-commands $ svn commit -m "Making the file empty" svn-commands Sending svn-commands Transmitting file data . Committed revision 813. $ svn list --verbose https://www.thegeekstuff.com/project/branches/release/migration/data/bin 16 sasikala 28361 Apr 16 21:11 README.txt 21 sasikala 0 Apr 18 12:22 INSTALL 22 sasikala Apr 18 10:17 src/ $ svn add thegeekstuff A thegeekstuff $ svn commit -m "Adding a file thegeekstuff" thegeekstuff Adding thegeekstuff Transmitting file data . Committed revision 814. $ svn delete thegeekstuff D thegeekstuff $ svn commit -m "Removing thegeekstuff file" thegeekstuff Deleting thegeekstuff Committed revision 814. $ svn diff filename $ svn -r R1:R2 diff filename $ svn diff thegeekstuff Index: thegeekstuff =================================================================== --- thegeekstuff (revision 815) +++ thegeekstuff (working copy) @@ -1 +1 @@ -testing +tester $ svn status PATH $ svn status /home/sasikala/cfg M /home/sasikala/cfg/ftp_user.cfg M /home/sasikala/cfg/geekstuff $ svn log PATH $ svn log thegeekstuff ------------------------------------------------------------------------ r815 | sasikala | 2011-04-16 05:14:18 -0700 (Sat, 16 Apr 2011) | 1 line Adding a file thegeekstuff ------------------------------------------------------------------------ $ svn move src dest $ svn move thegeekstuff tgs A tgs D thegeekstuff $ ls .# .. .svn email_user.cfg ftp_user.cfg inventory.cfg tgs $ svn update PATH $ svn update A new/usercfg A new/webcfg Updated to revision 819.
Thursday, July 21, 2011
Install SVN in Ubuntu 10.10
[1] http://johnsjavapda.blogspot.com/2011/01/how-do-you-install-subversion-svn-on.html --- good blog of java on pdahttp://www.blogger.http://www.blogger.com/img/blank.gifcom/img/blank.gif
[2] Linux Byexamples - SVN cmd lline
[3]Minishaha Wordpress blog. Install SVN from commnad line.
[4] Official Ubuntu Site intro about SVN installation.
$ sudo apt-get install subversion
[2] Linux Byexamples - SVN cmd lline
[3]Minishaha Wordpress blog. Install SVN from commnad line.
[4] Official Ubuntu Site intro about SVN installation.
$ sudo apt-get install subversion
Tuesday, April 26, 2011
Installation of Git to get Lpc32xx latest code.
[1] http://git.lpclinux.com/?p=linux-2.6.34-lpc32xx.git;a=summary
[2] http://kernel.org/pub/software/scm/git/RPMS/i386/
[3] http://git-scm.com/
Get git RPM release 'git-1.6.5.1-1.fc9.i386.rpm','perl-Git-1.6.5.1-1.fc9.i386.rpm' from [2].
[root@localhost Download]# rpm -ivh git-1.6.5.1-1.fc9.i386.rpm perl-Git-1.6.5.1-1.fc9.i386.rpm
Preparing... ########################################### [100%]
1:git ########################################### [ 50%]
2:perl-Git ########################################### [100%]
[root@localhost Download]#
GET LATEST SOURCE CODE OF LPC32XX BSP VIA GIT
---------------------------------------------------
[q.yang@localhost GitLpc32xx]$ git clone git://git.lpclinux.com/linux-2.6.34-lpc32xx
Initialized empty Git repository in /home/q.yang/lpc3250/GitLpc32xx/linux-2.6.34-lpc32xx/.git/
remote: Counting objects: 34362, done.
remote: Compressing objects: 100% (30654/30654), done.
remote: Total 34362 (delta 3530), reused 33921 (delta 3209)
Receiving objects: 100% (34362/34362), 94.09 MiB | 271 KiB/s, done.
Resolving deltas: 100% (3530/3530), done.
Checking out files: 100% (32343/32343), done.
[2] http://kernel.org/pub/software/scm/git/RPMS/i386/
[3] http://git-scm.com/
Get git RPM release 'git-1.6.5.1-1.fc9.i386.rpm','perl-Git-1.6.5.1-1.fc9.i386.rpm' from [2].
[root@localhost Download]# rpm -ivh git-1.6.5.1-1.fc9.i386.rpm perl-Git-1.6.5.1-1.fc9.i386.rpm
Preparing... ########################################### [100%]
1:git ########################################### [ 50%]
2:perl-Git ########################################### [100%]
[root@localhost Download]#
GET LATEST SOURCE CODE OF LPC32XX BSP VIA GIT
---------------------------------------------------
[q.yang@localhost GitLpc32xx]$ git clone git://git.lpclinux.com/linux-2.6.34-lpc32xx
Initialized empty Git repository in /home/q.yang/lpc3250/GitLpc32xx/linux-2.6.34-lpc32xx/.git/
remote: Counting objects: 34362, done.
remote: Compressing objects: 100% (30654/30654), done.
remote: Total 34362 (delta 3530), reused 33921 (delta 3209)
Receiving objects: 100% (34362/34362), 94.09 MiB | 271 KiB/s, done.
Resolving deltas: 100% (3530/3530), done.
Checking out files: 100% (32343/32343), done.
Saturday, May 2, 2009
Check Out Repository using Tortoise SVN
Monday, February 16, 2009
Files shared among SVN repositories or projects.
1. Create an folder 'IncludeShare' in project COM as below
+---COM
| +---Include
| +---IncludeShare
| +---Sources
|
\---DAQ
+---Include
+---IncludeShare (appear after update project from repository)
+---Sources
2. Choose properties for DAQ project in SVN right click menu
3. Click 'ADD' Button and select 'svn:externals' in the drop down list of 'property name'.
4. type text in the edit box
'IncludeShare https://JUPITER:8443/svn/CableTracker/trunk/Firmware/COM/IncludeShare'
5. click 'OK' to close all pop up windows.
6. Update project 'DAQ' using SVN menu, then you will see '\IncludeShare' appeared under DAQ project.
7. Check the SVN revision of \DAQ\IncludeShare, you will see that it's pointing to COM project.
Details, you can refer to tortoise help:
5.2.4. Referenced Projects
Sometimes it is useful to construct a working copy that is made out of a number of different checkouts. For example, you may want different subdirectories to come from different locations in a repository, or perhaps from different repositories altogether. If you want every user to have the same layout, you can define the svn:externals properties.
Let's say you check out a working copy of /project1 to D:\dev\project1. Select the folder D:\dev\project1, right click and choose Windows Menu ¡รบ Properties from the context menu. The Properties Dialog comes up. Then go to the Subversion tab. There, you can set properties. Select the svn:externals property from the combobox and write in the edit box the repository url in the format name url or if you want to specify a particular revision, name -rREV url You can add multiple external projects, 1 per line. Note that URLs must be properly escaped or they will not work properly. For example you must replace each space with %20. Note that it is not possible to use foldernames with spaces in them. Suppose that you have set these properties on D:\dev\project1:
sounds http://sounds.red-bean.com/repos
quick_graphs http://graphics.red-bean.com/repos/fast%20graphics
skins/toolkit -r21 http://svn.red-bean.com/repos/skin-maker
Now click Set and commit your changes. When you (or any other user) update your working copy, Subversion will create a subfolder D:\dev\project1\sounds and checkout the sounds project, another subfolder D:\dev\project1\quick graphs containing the graphics project, and finally a nested subfolder D:\dev\project1\skins\toolkit containing revision 21 of the skin-maker project.
If the external project is in the same repository, any changes you make there there will be included in the commit list when you commit your main project.
If the external project is in a different repository, any changes you make to the external project will be notified when you commit the main project, but you have to commit those external changes separately.
Note that if you change the URL in an svn:externals property, then next time you update your working copy Subversion will delete the old external folder and make a fresh checkout, so you will see files being Added, rather than being Updated as you might have expected. This situation might occur if you reference a tag from another project. When a new version of that project is released, you change your external reference to point to the new tag.
+---COM
| +---Include
| +---IncludeShare
| +---Sources
|
\---DAQ
+---Include
+---IncludeShare (appear after update project from repository)
+---Sources
2. Choose properties for DAQ project in SVN right click menu
3. Click 'ADD' Button and select 'svn:externals' in the drop down list of 'property name'.
4. type text in the edit box
'IncludeShare https://JUPITER:8443/svn/CableTracker/trunk/Firmware/COM/IncludeShare'
5. click 'OK' to close all pop up windows.
6. Update project 'DAQ' using SVN menu, then you will see '\IncludeShare' appeared under DAQ project.
7. Check the SVN revision of \DAQ\IncludeShare, you will see that it's pointing to COM project.
Details, you can refer to tortoise help:
5.2.4. Referenced Projects
Sometimes it is useful to construct a working copy that is made out of a number of different checkouts. For example, you may want different subdirectories to come from different locations in a repository, or perhaps from different repositories altogether. If you want every user to have the same layout, you can define the svn:externals properties.
Let's say you check out a working copy of /project1 to D:\dev\project1. Select the folder D:\dev\project1, right click and choose Windows Menu ¡รบ Properties from the context menu. The Properties Dialog comes up. Then go to the Subversion tab. There, you can set properties. Select the svn:externals property from the combobox and write in the edit box the repository url in the format name url or if you want to specify a particular revision, name -rREV url You can add multiple external projects, 1 per line. Note that URLs must be properly escaped or they will not work properly. For example you must replace each space with %20. Note that it is not possible to use foldernames with spaces in them. Suppose that you have set these properties on D:\dev\project1:
sounds http://sounds.red-bean.com/repos
quick_graphs http://graphics.red-bean.com/repos/fast%20graphics
skins/toolkit -r21 http://svn.red-bean.com/repos/skin-maker
Now click Set and commit your changes. When you (or any other user) update your working copy, Subversion will create a subfolder D:\dev\project1\sounds and checkout the sounds project, another subfolder D:\dev\project1\quick graphs containing the graphics project, and finally a nested subfolder D:\dev\project1\skins\toolkit containing revision 21 of the skin-maker project.
If the external project is in the same repository, any changes you make there there will be included in the commit list when you commit your main project.
If the external project is in a different repository, any changes you make to the external project will be notified when you commit the main project, but you have to commit those external changes separately.
Note that if you change the URL in an svn:externals property, then next time you update your working copy Subversion will delete the old external folder and make a fresh checkout, so you will see files being Added, rather than being Updated as you might have expected. This situation might occur if you reference a tag from another project. When a new version of that project is released, you change your external reference to point to the new tag.
Thursday, November 13, 2008
Sunday, November 2, 2008
SVN repository access by password within LAN.
--step 1 -- edit password file
[user@FedoraHome ~]$ vi /var/svn/repos_ebook/conf/passwd
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
[users]
# harry = harrypwd
# sally = sallypwd
--step 2 -- change config file
Has to disable anon-access so that password works on SVN checkout. (on SVN 1.8.8-1 default with Fedora 20)
[user@FedoraHome ~]$vi /var/svn/repos_ebook/conf/svnserve.conf
### The anon-access and auth-access options control access to the
### repository for unauthenticated (a.k.a. anonymous) users and
### authenticated users, respectively.
### Valid values are "write", "read", and "none".
### Setting the value to "none" prohibits both reading and writing;
### "read" allows read-only access, and "write" allows complete
### read/write access to the repository.
### The sample settings below are the defaults and specify that anonymous
### users have read-only access to the repository, while authenticated
### users have read and write access to the repository.
anon-access = none
# auth-access = write
### Uncomment the line below to use the default password file.
password-db = passwd
...........
### Uncomment the line below to use the default authorization file.
# authz-db = authz
### This option specifies the authentication realm of the repository.
### If two repositories have the same authentication realm, they should
### have the same password database, and vice versa. The default realm
### is repository's uuid.
realm = My ebook Repository
Other advanced access control methods, like via ssh tunnel, apach server. pls refer to SVN user guide Chapter 6 Server Configuration.
ACCESS SVN WITHIN LAN THROUGH TORTOISE SVN CLIENT
--------------------------------------------------
[user@FedoraHome ~]$ vi /var/svn/repos_ebook/conf/passwd
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
[users]
# harry = harrypwd
# sally = sallypwd
--step 2 -- change config file
Has to disable anon-access so that password works on SVN checkout. (on SVN 1.8.8-1 default with Fedora 20)
[user@FedoraHome ~]$vi /var/svn/repos_ebook/conf/svnserve.conf
### The anon-access and auth-access options control access to the
### repository for unauthenticated (a.k.a. anonymous) users and
### authenticated users, respectively.
### Valid values are "write", "read", and "none".
### Setting the value to "none" prohibits both reading and writing;
### "read" allows read-only access, and "write" allows complete
### read/write access to the repository.
### The sample settings below are the defaults and specify that anonymous
### users have read-only access to the repository, while authenticated
### users have read and write access to the repository.
anon-access = none
# auth-access = write
### Uncomment the line below to use the default password file.
password-db = passwd
...........
### Uncomment the line below to use the default authorization file.
# authz-db = authz
### This option specifies the authentication realm of the repository.
### If two repositories have the same authentication realm, they should
### have the same password database, and vice versa. The default realm
### is repository's uuid.
realm = My ebook Repository
Other advanced access control methods, like via ssh tunnel, apach server. pls refer to SVN user guide Chapter 6 Server Configuration.
ACCESS SVN WITHIN LAN THROUGH TORTOISE SVN CLIENT
--------------------------------------------------
Friday, October 24, 2008
Creation of New repository in SVN under Fedora9
#svnadmin create /var/svn/repos_ebook
#chown -R username:groupname ./var/svn/repos_ebook
#chmod 751 -R ./var/svn/repos_ebook
$svn import ~/Doc_eBook/ file:///var/svn/repos_ebook/ -m "Initial ebook checkin"
Adding ....................
Adding.................
$svnserve -d
[ xxx Svn_Repositories]$svn checkout svn://10.1.1.7/var/svn/repos_ebook/
A repos_ebook/xxxx.pdf
.....
CHECK INFO UNDER SVN LOCAL COPY
---------------------------------------
[q.yang@QuentinFedoraHome repos_ebook]$ svn info
Path: .
URL: svn://10.1.1.7/var/svn/repos_ebook
Repository Root: svn://10.1.1.7/var/svn/repos_ebook
Repository UUID: 58f1f484-073d-462f-9905-d575a86c2588
Revision: 12
Node Kind: directory
Schedule: normal
[q.yang@QuentinFedoraHome repos_ebook]$ pwd
/home/q.yang/Svn_Local/repos_ebook
#chown -R username:groupname ./var/svn/repos_ebook
#chmod 751 -R ./var/svn/repos_ebook
$svn import ~/Doc_eBook/ file:///var/svn/repos_ebook/ -m "Initial ebook checkin"
Adding ....................
Adding.................
$svnserve -d
[ xxx Svn_Repositories]$svn checkout svn://10.1.1.7/var/svn/repos_ebook/
A repos_ebook/xxxx.pdf
.....
CHECK INFO UNDER SVN LOCAL COPY
---------------------------------------
[q.yang@QuentinFedoraHome repos_ebook]$ svn info
Path: .
URL: svn://10.1.1.7/var/svn/repos_ebook
Repository Root: svn://10.1.1.7/var/svn/repos_ebook
Repository UUID: 58f1f484-073d-462f-9905-d575a86c2588
Revision: 12
Node Kind: directory
Schedule: normal
[q.yang@QuentinFedoraHome repos_ebook]$ pwd
/home/q.yang/Svn_Local/repos_ebook
Subscribe to:
Posts (Atom)
