I'm trying to use CVS on my linux machine for the first time for a project, and I keep hitting my head against the same brick wall.
I have created a projects directory as /home/myuser/cvsproject
I then set the environment variable for CVS as:
export CVSROOT=/home/myuser/cvsproject
I then ran the initialize for CVS as: cvs init
This created the CVSROOT folder under my projects directory.
I then created a lower level project directory, as /home/myuser/cvsproject/project1
I added these project details in the modules file at the end as
project1 project1
I am now trying to add a new file to the repository with cvs add project1/filename.txt but I get the following error:
cvs add: in directory project1:
cvs [add aborted]: there is no version here; do 'cvs checkout' first
The file is in my current directory, located in /home/myuser/cvsproject/
If I try to add the file without the project1 prefix: cvs add filename.txt I get the same error still.
I am able to check out a file in the CVSROOT directory, i.e.
cvs checkout CVSROOT/modules so CVS is definitely working.
I appreciate any help. Thanks
CVS is not decentralised, you shouldn't make your project directory the root of CVS repository. Set CVSROOT to different place where your repository will reside (that is not the same place as your project's working directory - it should be some place new, where CVS will create its structure), then add or import everything you need (don't forget to commit). If you want another working copy, you should checkout from the same CVSROOT.
Related
I completed MyProject1 and have uploaded it in git in fine way with commits after adding each new features. And now I'm starting MyProject2 and was trying to add the URL for the remote repository. But then I found out that I had mistakenly added the URL in Documents instead of MyProject1 folder because of which MyProject2 folder is also being tracked in MyProject1. And I'm not being able to add URL to MyProject2 but instead facing merge issues.
Is there any way to detach the track from my Document folder without deleting any of my files from Documents.
Structure is this way(I'm using Linux):
Documents
(And inside Documents there is:)
MyProject1
MyProject2
And other folders which are also being tracked.
We can manually do it with below steps
create a file .gitignore in base directory.
If MyProject1 and MyProject2 are already part of git tracking, Please run commands
git rm -r --cached MyProject1/
git rm -r --cached MyProject2/
Open the file in text editor and add below lines in file
MyProject1/
MyProject2/
Best way:
Create a .gitignore file following #Vinayagam R
Ignore file locally
Those methods won't affect other contributors working on the same remote repository:
Use update-index:
If you want to stop tracking a file at certian point.
git update-index --assume-unchanged yourDirectoryName
--assume-unchanged is the flag which means the files should not change locally. In other words, it is used when ignore files that you do not need to change locally (or should not change).
To revert it use update-index --no-assume-unchanged yourDirectoryName
Using .exclude
In your working directory edit .git/info/exclude
I am extremely new to SVN, I am using SVN on Mac OS terminal. I have a file on my laptop that I want to transfer to my repository on my remote server.
This is what I have done:
I have checked out the repository. It says "checked out revision *".
I have used cd until the folder that I want to insert the file. So at this point I have a path like: (...../src/soln$) so I want to insert the file in the 'soln' folder.
When I try:
svn add ('...../lo.java') (the path to my file on my computer) it says:
('....../src/soln/') is not a working copy
svn import ...../lo.java it brought something weird to the screen
Please help me figure out what I am doing wrong or not doing.
The error indicates that the parent is not yet in svn. Try to svn add each folder above lo.java.
As an example if the repo root is at /path/to/my/repo and your file is in /path/to/my/repo/src/soln/lo.java then you'll not only want to svn add lo.java from inside the soln directory, but you'll also want to svn add /path/to/my/repo/src and then svn add /path/to/my/repo/src/soln before you can perform the svn add lo.java
My .gitignore file looks like:
html/
cache/
resources/
# Temp files often created by editors
*.~
I know wish to start tracking a specific directory in html, so I add `!html/support/
html/
cache/
resources/
# Temp files often created by editors
*.~
# Track support
!html/support/
After doing so, however, Git still doesn't seem to track html/support/ and all its children.
How do I add a previously ignored directory to Git repository?
Not ignoring doesn't mean tracking.
Just use
git add html/support/
at the root of your git repository.
If the file is still ignored, though, you can use git add -f to force adding it (this will not modify the .gitignore file, just allow one little exception) :
git add -f html/support/
Your .gitignore should add this line:
!html/support/**
You can simply go to the Directory of the File where .gitignore file is located. This File contains all the files that are ignored. You can simply remove the file listing and save it. Then Refresh your project. Then you will be able to commit those files.
I am creating a svnrepository using svnadmin create svndump
In the svnsump I am creating a folder with the name trunk and importing some of my existing files.
svn import /home/somefiles/ file:///home/svndump/trunk/
But when i see trunk folder it does'nt contains any folder which are imported from somefiles folder.
but when i looked the files using svn log file:///home/svnadump/trunk/ i can see the files .
it seems files are copying but they are not adding to the repository..
how to add files to repository???
Please help me..
Thanks in Advance.
You should be using svn ls to view the contents of repository.
For adding files to repository once you have imported, the standard way is to checkout a copy, add some files using 'svn add' and them commit them to the repository.
I'm fairly new to linux and svn. I'm trying to checkout the trunk folder of a project into my public_html directory using this command (while in public_html):
svn checkout file:///home/landonwinters/svn/waterproject/trunk
The waterproject directory contains the files from untarring a base install of drupal.
It checks out fine, except all the files are in public_html/trunk instead of just being in public_html.
I don't know the command to move all the contents of trunk up to public_html and rm trunk, but I think I could figure that out relatively easily. I just want to know if I can just check out the contents of a folder, without the folder itself.
Just add a . to it:
svn checkout file:///home/landonwinters/svn/waterproject/trunk .
That means: check out to current directory.
svn co svn://path destination
To specify current directory, use a "." for your destination directory:
svn checkout file:///home/landonwinters/svn/waterproject/trunk .
Just add the directory on the command line:
svn checkout svn://192.168.1.1/projectname/ target-directory/
Provide the directory on the command line:
svn checkout file:///home/landonwinters/svn/waterproject/trunk public_html