Smartgit - cannot connect to repository while on a MAC - windows

I am trying to connect using SmartGit 6.5.5 (build #4184) to a GitHub private organization repository. However, on Mac OS X, it's not working.
On SmartGit, I go to Repository -> Clone, then in "Remote Git or SVN Repository" I type in the following address:
https://github.com/JBCJBCJBC/Testing.git"
It does not work on my Mac OS X. I get the error:
"Could not connect to the repository https://github.com/JBCJBCJBC/Testing.git".
Please check the repository URL. repository "
https://github.com/JBCJBCJBC/Testing" not found: remote: Repository not found"
When I downloaded SmartGit for windows on Parallels, and used the above link, it worked.
Back on OS X, when I use my public folder, it works:
https://github.com/yanjbc/test.git
It seems to have to do with Mac OS X on a private repository that is not working. Does anyone have any idea why this is occurring?

This could be an authentication problem. Instead of revealing information about private repositories, GitHub is (possibly) mimicking the behaviour of a non existent repository.
Can you try this command from the command line?
> git ls-remote https://github.com/JBCJBCJBC/Testing.git
12641062c10c8ada29e44c94be905a027a469f00 HEAD
12641062c10c8ada29e44c94be905a027a469f00 refs/heads/master
If you do not get any output from the command above, then your authentication settings are not correct, and you will not be able to access the private repository. GitHub has a guide on how to setup and troubleshoot key issues.
However, if this gives you some output like the sample above, then you can definitely connect to your private repository in some way. It might mean your issue is related to this post about SmartGit. It seems that answer is related to Windows, so I am not sure how you would proceed on Mac OS X as Putty is a Windows only program.
A couple of alternatives to SmartGit (if you can't get it working with your keys) are:
SourceTree from Atlassian (free, but need to register)
The good old command line

For Authorized OAuth Apps you may need to grant the organization access.
github application settings
Choose SmartGit application and explicitly grant the org.

Related

Clone git repo hosted on a Windows shared folder from Mac OS X

I host a git remote repo on a Windows shared folder. I clone it using:
git clone //git-host-pc/SharedFolder/MyProject/
This command works from a Windows PC, but on a Mac, I get this error:
fatal: repository '//git-host-pc/SharedFolder/MyProject' does not exist
Trying git clone smb://git-host-pc/SharedFolder/MyProject gives me this error - fatal: Unable to find remote helper for 'smb'.
Note: I've found this question has been asked before mine - Use a git repos on a windows share from osx, however the OP there hasn't provided his exact commands, or the error messages, and that's why his question is unanswered.
Edit: I forgot to mention, but the shared folder is visible from the Mac, I can see it in Finder.
I kind of like to think that remote file system access is an OS thing, and that cloning repos is an application-level thing, so this would be my approach:
You should just be able to mount that SMB share with your OS'es functions to a local directory and clone from there, instead of hoping git has a transport for SMB.
How to mount:
Connect to the server on your Mac. Now, on your Mac, from Finder's Go menu, choose "Connect to Server." Enter the IP address you just obtained from your PC, preceded by smb://, as shown:
UPDATE: To use your PC's name instead of IP address, replace the number with the name. So if your PC's name is "MyWindowsBox", you'd use smb://mywindowsbox (not case-sensitive).
If it finds your server, you'll get prompted to enter your network credentials - by default, your Windows username and password:
Where to find the mounted folder:
Once I mounted the //git-host-pc/SharedFolder in that way, I found it in /Volumes/SharedFolder.
I've written this answer for those curious to know what git means by Unable to find remote helper for 'smb'
Git requires a helper program whenever it sees a URI such as ftp:// or smb://
When git encounters a URL of the form <transport>://<address>, where
<transport> is a protocol that it cannot handle natively, it
automatically invokes git remote-<transport> with the full URL as the
second argument
Source: https://git-scm.com/docs/git-remote-helpers
Basically you do not have git remote-smb installed. You can use git help -a to see what helpers you have installed.
Until somebody writes a git remote-smb helper, it's probably best to just mount the drive you want as mentioned in another answer.

Github Mac Permission Issue

I'm using the latest Github for Mac as a new Git user. When I try to sync a repo (that I first cloned, then created a new branch, commited changes, and then merged with master), I got the error:
Authentication Failed.
You may not have permission to access repo111. Check Preferences to make sure you’re still logged in.
I searched for similar questions, but the answer seemed to be add SSH keys to github, so I followed: https://help.github.com/articles/generating-ssh-keys.
When I do ssh -T git#github.com, I get:
Hi User111! You've successfully authenticated, but GitHub does not provide shell access.
I'm logged in as the correct user, and have rights to the repo, so I'm not sure why I'm not authenticated?
It could be that you entered a password incorrectly and it's stored in your keychain.
For my situation, I was using GitHub for Mac to work with a BitBucket repository. Long story short, I mistyped my BitBucket password and GitHub for Mac could not authenticate (because the password stored in my keychain was wrong).
Thanks to the helpful folks at GitHub, they quickly responded when I asked for help:
Open Keychain Access.app (in /Applications/Utilities) and search for "GitHub for Mac." There should be an entry like "GitHub for Mac — bitbucket.com". Delete that entry
Steps to fix if using GitHub for Mac to manage a BitBucket repo
If you see this:
… then you might have a BitBucket keychain/password problem.
Open Keychain Access.app (in /Applications/Utilities) and search for bitbucket:
Right-click on the entry and get info:
Click on "Access Control" to confirm that it's truly the GitHub for Mac BitBucket password/login keychain item:
Rather than deleting the keychain entry/item, I just edited my password:
You should now be able to use GitHub for Mac without authentication failures. :)
Had the same problem, but it was not a password problem, since other repositories worked just fine.
Finally compared .git/config with a working repository and found this:
This failed:
[remote "origin"]
url = github#github.com/path/to/repository
This worked:
[remote "origin"]
url = https://github.com/path/to/repository
Still have no idea how or why this changed.
I had to try some other stuff after the solutions above didn't work out for me.
Dont know why I got this issue, or why was fixed after:
deleting the existing keys:
.ssh/github-rsa
.ssh/github-rsa.pub
restarting GitHub Desktop, which automatically regens the keys
add new keys to repo host (bitbucket etc)
I had the same problem, then I followed this steps:
Login to BitBucket and go to the repository you want to use
Click the “Clone” button, and change the drop down option to HTTPS.
Copy the command that appears (something like: git clone https://username#bitbucket.org/team-name/repository-name.git)
Open terminal in your mac and navigate to wherever you want the theme files to be stored.
Paste the clone command in the terminal, press enter and then enter your password when requested.
In Github for Mac go to the repositories screen and click the + sign in the status bar.
Select Add Local Repository – and then select the repository of the folder you want to add.
Done
If you have created remote repository on GitHub and merged with local repository or project .
you can add that local repository to GitHub desktop app
than go to Repository > repository settings > Remote >
under remote You'll find primary remote repository (origin)
there's a ssh remote url delete that And
Go to your GitHub account.
Open Your Remote repository
click on Clone or Download
Copy the https URL
paste that in the GitHub desktop app
click on fetch in the Desktop GitHub App
It'll work Great :)
If your password is correct and you still see have this problem, chances are your .git/config file has some miss configuration.
In my case, it had a pushurl value under [remote "origin"] which was not needed (I was working on a cloned project).
Comment that line by adding a # before it and you are good to go :)
Also, if you get an error saying:
This repository is configured for Git LFS but 'git-lfs' was not found on your path. If you no longer wish to use Git LFS, remove this hook by deleting .git/hooks/pre-push
just delete that by doing
rm .git/hooks/pre-push
now you are all set. This happened to me also using github desktop app for mac, with a remote bitbucket repo.
hint: if you commit changes and refresh bitbucket to see the changes, those might not show, but navigate to the root of the project and then back to the file and you'll see the changes. Probably some cache issue but it can drive you mad if you don't know this hint.

Git pushes files to github with wrong username

I'm trying to push my committed changes to Github using Terminal on Mac OS but
it keeps saying that the access to the repository is denied to my old github user
Permission to myuser/test1.git denied to "OldUser".
fatal: unable to access 'https://github.com/"NewUser"/test1.git/': The requested URL returned error: 403
I found some similar problems but none of the answers worked for me:
First of all Iv'e removed all the SSH keys from my mac and created a new one which I then synced with my github account.
Second, I have set the Global config for git to my new username and email using
git config --global user.name AND user.email
When I changed the user and email in the git local config file in my project dir (thinking at least that would work), I was surprised to see the same error when pushing, with my old user name popping out again.. (I really thought a local config would override any old global values) I just don't know where to look anymore..
There are no git environment variables defined and the SSH keys were all re-created.
seems that the last option is to re-install git which would be a really ugly way out..
Oh! BTW when i'm trying to push to github using the dedicated MacOS app it works just fine! I wasn't surprised a bit because all users reporting this problem said that the app worked for them just fine.. Just thought I mention it!
So, if anyone got an answer (or at least a hunch) it would help me a lot.
BTW when I'm trying to push to github using the dedicated MacOS app it works just fine!
It is possible the gitHub for Mac is using https url, with your GitHub login/password (which GitHub for Mac is caching).
Check the url associated with your remote origin:
git remote -v
If it is an https url (like your error message suggests "unable to access 'https://github.com/"NewUser"/test1.git/'"), no amount of SSH fiddling will change that error.
Maybe, for http url, the Credential Caching on Mac OS X has still the old credentials.
I had the exact same error on Windows and apparently it's a Git problem. Thanks to ayan4m1 at github forums (https://github.com/Microsoft/Git-Credential-Manager-for-Windows/issues/152) I finally fixed this issue in Windows using notepad in admin mode to delete the credential.helper = manager lines from the C:\Program Files\Git\mingw64\etc.gitconfig file. Nothing else worked.
Apparently since I was in non-elevated mode in Git bash from my IDE none of my global commands were able to overwrite the global file. Hope this helps and saves time for someone else with this issue.

GIT fatal: unable to write new index file

My Company (Web Development) has decided to use Git. All repositories: employee (local repo) and remote repositories (bare repo) are stored on the central development server (OS X 10.9.1, Mac mini middle 2011). Developer connect to the development server from their iMacs over local network (OS X 10.7.5, 10.8.1 and so on, only Macs) and write the source code there. A Git client on Mac called Sourcetree should do the whole work. But after a few commits or some other git operations I get sooner or later following message:
fatal: unable to write new index file
After the message GIT can track the changes in the project, but I can't save anything to git. Even by using terminal or anotrher GIT-GUIs (I have tried Coda, GitHub) I get the same error message.
If the git client and the repository are stored on the same mac, everything works fine (tried on the development server and two iMacs). The problem occurs only if the git client has to connect to the repository over local network (AFP).
If I start the Git client on the development server and save some changes to the „damaged“ repository, everything works again. Also over local network. But if i work then in the repository on the development server with my local git client from my iMac over local network, I get sooner or later (mostly after a few adds or commits) the same error message.
I connect or login on server allways as the same user. Also Git client connects as the same user.
I suspect, that the reason is AFP.
I have enouth free space on the central development server. And have enouth file permissions, at least initially. These topics were not helpful for me:
https://apple.stackexchange.com/questions/111934/git-not-working-over-afp
GIT: "fatal: unable to write new_index file" while commit
git problem : fatal: Unable to write new index file
https://answers.atlassian.com/questions/155102/sourcetree-error-fatal-unable-to-write-new-index-file
Does Git generally choke on mounted drives? Or just Git GUI's?
What could I do?
We've run into the same issue repeatedly, especially as we try to use XCode 6. I'm currently changing over my connect to our server to WebDAV (connecting to our server via Finder > Go (menubar) > Connect to Server... > https://localnetworkIP/userfolder/).
This is working for us (so far).
UPDATE: After a few days, I noticed a new issue using WebDAV: files would disappear from view in the Finder causing XCode/Git to think that the file had been deleted. Looking at the server showed that the files were still there.
I then changed my connection type to SMB. This has worked well for me: Git no longer encounters file permission errors, and Finder (OSX 10.10 Yosemite) doesn't "loose" files.

Clone repository from github in xcode userid password error

Open xcode then click "Connect to a repository"
After entering the URL the button on the bottom changes to clone. FYI The repository is private and should require a github password and userid. Clone button is then clicked.
It asks where to save the file. I choose a location then it comes here:
Always trust github.com is chosen as suggested in another post. Click Continue then get the following:
At this point it has not asked me for my username or password at any time. Looking around here and on other sites it should ask for user id and password at this point but this is all I get.
How can I get to the screen asking me to enter my Github user id and password when cloning a private repository on github.com in xcode?
This is a glitch in xCode. You will have to install git and repair/prepare the repository from the git command line or another git tool then reopen the project in xCode and then it will be recognized.
xCode is great for git when it works but will break sometimes and need manual repair/tweaking of a repository outside of xCode. You should think of the git features of xCode as a great aid to using git but not a complete interface replacement.
You can try that way:
Open Terminal application.
cd to your project directory. (cd /your/project/directory)
Write git clone https/link/for/your/git.
Put password for the git user.
It will start download on your project directory.
It seems to work using the git#github.com:user/repo.git URL format if you have your public SSH key set up properly on your Mac (and the private key is not protected by a passphrase).
When xCode logs in via SSH to clone the repo, it will be able to do so without you having to provide any credentials. Note that this will probably only work where you have SSH (read/write) access to the repo in question. Since with Github you are likely to be forking another project and working on your own fork, this shouldn't be too much of an obstacle though.

Resources