How to check out a project from a server with Git - eclipse

You may classify my question to the layman's level, but I am using Git for the first time (til now I used TortoiseSVN) and I am not sure how I can check out an existing project from a server, so as to have it available on my local machine in a folder. I have installed Git Bash. Should I run it (Gui), select New Archiv and then specify the path of the project in the server? Is there a better Git framework to install, which is appropriate to make the same task more easily?
I would appreciate also some screenshots if needed in the answers.
Update: I have installed also TortoiseGit. I want to create a new clone by a right click in a directory, but the new Clone is not available after the right click. Does it need additional configuration? If no, what should I do from TortoiseGit to checkout an existing project?

I'd usually recommend learning git from command line. But if you are already familiar with TortoiseSVN then TortoiseGIT is a good tool for you.
Also, I think you should learn git very well. I can recommend the book Pro Git.
To "check out" a git repository is called clone in the git world (you will get a whole copy of the server repository). This can be done either from command line or TortoiseGIT.
git bash:
$ cd /path/to/my/projects
$ git clone url-to-server-repo
Update:
Since you get the "normal" TortoiseGit menu (without clone option), it seems you already have a local git repository. You probably created an empty git repository by mistake. Look for a hidden directory .git in the project directory or any parent directory.

right click on the folder (not right click on nothing in the folder, the icon of the folder you want to clone INTO from the parent directory) and select clone from the menu.
FYI:
clone = create a copy of a repository.
checkout = change the current state of an existing repo to a saved state.
so if you have a repo w/ 3 commits (A,B,C) when you clone the repo you will be at the most current state (C). if you want to see the previous state of the repo you would git checkout B. if you want to see the repo's initial state you would git checkout A
hope that helps.

Related

Egit: Right click not showing GIT commands

I can't see the GIT commands when using right click on any files in a GIT repository.
I'm using Eclipse-Luna, A fresh install, afeter trying different versions of EGIT.
Thanks,
Elyahu
Some screen shots of the preferences:
I can't see the GIT commands when using right click on any files in a GIT repository.
You must first share that local project in order to make it recognized as a Git repository.
See "How make Eclipse/EGit recognize existing repository information after update?",but don't forget, once shared, to close/reopen your project.
Then Git will be active on said project.

Rstudio: Changing origin for git version control of project

I originally set up git in Rstudio while enrolled in the Data Scientist's Toolbox course at Coursera. Unfortunately, I did this in my phd project. The repository no longer exists on github. I am now attempting to write my thesis in rmarkdown using knitr and bookdown. I would like to use version control, both to learn proper git workflow and to have a structured back up of everything I have done in my thesis. However, I have been unable to change the version control repository in Rstudio.
I am unable to change this in the Tools > Version control > Project setup > Git/SVN menu. The Origin: textbox is unchangable.
I tried creating a new project using the old phd project's working directory. This also cloned the version control settings.
How do I change the origin to accomplish what is described above?
Git, Github and Rstudio are different things. You could use git as local version control tools. You might connect your local repo to Github account which is based on git by push/pull. Rstudio just makes a user interface for git and supplies the function to push the repo into remote server based on git to make version control(not only Github, but also Gitlab).
So for your issue, if you do not want to pay for github for a private repo, all of your code would be public and I don't think it is good before your finally finished your thesis. But version control could be made locally with git only. Just use git shell to control the version.
However, as a student, github could support private repo here for you. Just register and find your student package. Then just remove the url for remote repo after you cd to your workdir in command line, use the following code to find your remote url(mostly you might fing origin):
git remote -v
Then use this to remove them:
git remote rm origin
Now you could use version control locally. If you want to connect this repo to your remote github private repo, use this:
git remote add origin https://github.com/[YourUsername]/[YourRepoName].git
RStudio would find this information about git and support your following operation. Project in RStudio is different with git, although project support git as version control tool. So you need git in command line or shell to solve your problem.
This can be done by opening /your.project/.git/config
and editing the remote origin line(s), e.g. changing from git to https.
Restart Rstudio & you'll be prompted for your github username & password.
This is what worked for me for migrating from github to Azure
Go to the top right Git window in RStudio and click on the gear. Now click Shell (to open the terminal there).
#remove origin
git remote rm origin
#add new origin like Azure for me via HTTPS
git remote add origin https://USER#dev.azure.com/USER/PROJECT/_git/REPONAME
#push your local repro
git push -u origin --all
#in my case put in the PAT password if you needed to generate one.
After testing, I found some clue
Actually Rstudio is not really smart about this setting
It will first search for the git file in the Rproject folder where your Rporject file is located
if it could not, then it goes up to the folder contains your Rproject folder
However, for version control you only need coding files while RProject may contains some big files like .RData some pictures etc.
I don't find a way to manually disrupt this logic flow, the only thing you can do is to delete the current git repository setting files(which is .git folder and 2 other git setting files), then Rstudio may ask you if you want to init a new one.

Git working copy into Eclipse

I can't figure out why I can't get a working copy from a git repository into Eclipse PHP Explorer.
I think to have followed the steps I have been reading:
http://wiki.eclipse.org/EGit/User_Guide#Cloning_Remote_Repositories
http://www.vogella.com/tutorials/EclipseGit/article.html
But at the end of the procedure I don't have the code at the PHP Explorer. But the way, at Git perspective I can see the git repository.
The only options I can see at Team context-menu, are:
Apply Patch
Share code
By "share Code" option, the project files are moved into the git repository folder. By doing this:
the project tree parent has detected the git repository, I can see at the root tree [gitpoject git]
at the project properties, on Git section, I can see the Git repository data correctly
The Team contextual-menu has now the expected Git commands
If I do a commit from the root-tree, the Commit windows is shown and wants to add the Eclipse project structure.
But I can't see the code holded into the git repository into the project.
I tried to clone the git repository with "Git Bash" by one side, and import this folder into an existing project without luck.
Anyone could help? Thanks in advance.
Even if this not responds completely the problem I have explained, the only way I can have a working copy into the Eclipse PHP Explorer is by:
Make a git clone through Git Bash
Create a new project (PHP Project) and select "Create project at exisiting location" for Contents
By selecting the directory I have the repository cloned, I can see the contents of this repo now at the PHP Explorer and use the Git tools.
If someone could clarify why the procedure I have followed has not worked I will appreciate to understand it.

How do I configure Eclipse to use an existing git repository with existing source code?

I have Eclipse Juno with EGit and a project that I've been working on for a while. I've decided to move it to Git, so I created a Github account and downloaded and installed the program. The repository is at C:\Users\username\GitHub\project_name\, but all it has is the README.md file.
How can I configure Eclipse to use my existing source code (in a workspace separate from the git folder) to work well with git? I've tried using Window → Show View → Other and selecting "Git Repositories," but other than adding a repository (which I have done) I can't figure out how to sync the code.
I've read this question but I get the impression that those answers will perform a one-time commit, instead of a sync.
To clarify: The repository does not have any code. I would like my existing code (in the Eclipse workspace) to be synced to the new repository.
If you already have a git repository in place, first copy all your files to that directory (yes, manually) and do a git commit -a to commit all the files into the repository. I'm assuming here that you've already initialized the repository at C:\Users\username\GitHub\project_name\ with git init.
In eclipse, go to File → Switch Workspace → Other... and point it to a workspace of your choice that can be completely different than the location of your code, or your earlier workspace. In fact, don't point it to the directory which contains your git repository.
Once you have a clean workspace, go to File → New → Other..., select Git → Git Repository and enter the path of your git repository (C:\Users\username\GitHub\project_name\). Enter a name for the repository, and click Finish.
I would really recommend you read at least the first few chapters of the git book to understand how git works, and to help you push and pull code to and from remote repositories.
If your existing repository is not git, you're going to have a hard time keeping the directories in sync. You might want to setup rsync to sync the directories. There is no way AFAIK for eclipse to automagically keep the two repositories in sync.

Commit an entire Netbeans project on sourceforge

I have my own PHP project in NetBeans. Afterwards I have registered a sourceforge account. Now I would use sf's git repository for versioning my code.
What I need now is to send the entire project on the repository, using netbeans. How can i do that?
Assuming you are on SourceForge's latest platform i.e. Allura, you first need to create a Git repository on SourceForge.
(You might have already done this when you first made project)
Following are the step to create git repository on it.
1) Log in to SourceForge
2) Go to Admin
3) Click on Tools
4) Click on Git. At this point, it will ask for Label and mount point for it. Enter those information. Once you finish it should create a new tab on top menu with whatever label name you provided. Let's say you named it 'Code' for now.
5) Click on 'Code' label and it would show you following instruction to push the code.
// First time using Git
cd <your_local_project_dir>
git init
git commit -a -m 'Initial commit'
git remote add origin ssh://<your_sourceforge_username>#git.code.sf.net/p/<your_project_name_on_sourceforge>/<mount_point_name_you_provide_in_step4>
git push origin master
// Existing Repository
cd <your_local_project_dir>
git remote add origin ssh://<your_sourceforge_username>#git.code.sf.net/p/<your_project_name_on_sourceforge>/<mount_point_name_you_provide_in_step4>
git push origin master
I think you might want to take a look at NetBeans' Git support;
http://netbeans.org/kb/docs/ide/git.html#initialize
It's built into the IDE so there's no plugin to install.