Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

git clone followed by status shows untracked files

Tags:

git

Sorry, I'm a git newbie (though I'm very familiar with older source control systems like cvs and svn) ...

My ultimate goal is to add a file to a remote repository (one not on my machine) by cloning that remote repository locally, adding the file to the local repository, committing my change, and then pushing my local repository back to the remote.

I tried this:

git clone ssh://user@server/Users/GitRepo/Project.git
<create file locally>
git add <localfile>
git commit -m "Narg"
git push

But it just says "Everything up to date".

So I tried going step-by-step, and got even more confused.

git clone ssh://user@server/Users/GitRepo/Project.git
git status

And it tells me

# Not currently on any branch
# Untracked files:
  followed by a long list of Untracked files.

Which seems really strange, why would the files be untracked if I just cloned the repository?

If it's important, the remote repository is brand-new, created via svn2git.

If I type

git remote show origin

it tells me

* remote origin
  Fetch URL: ssh://user@server/Users/GitRepo/Project.git
  Push  URL: ssh://user@server/Users/GitRepo/Project.git
HEAD branch: master
Remote branch:
   master tracked
Local branch configured for 'git pull':
   master merges with remote master
Local ref configured for 'git push':
   master pushed to master (up to date)

and if I type

git branch -a

it tells me

* (no branch)
master
remotes/GitRepo/master
remotes/origin/HEAD -> origin/master
remotes/origin/master

So am I just confused, and everything is actually working correctly? Or am I doing the git commands wrong? Or did I create the repository incorrectly, so no git commands will ever work properly?

Thanks, Chris

like image 589
Betty Crokker Avatar asked Oct 24 '13 15:10

Betty Crokker


People also ask

How do I fix nothing added to commit but untracked files?

To fix this error, either add the files causing the error to the staging area or ignore them using the . gitignore file.

Does git status show untracked files?

When working with new folders, git does not show the contents of those folders by default when you run git status . There are three parameters available for -u : -uno which doesn't show any untracked files. This is useful when you only want to see the status of files already added to the index.

What are untracked files in git status?

Untracked files are files that have been created within your repo's working directory but have not yet been added to the repository's tracking index using the git add command.


2 Answers

git config -l

if current git repository's core.precomposeunicode=true

try this,

git config core.precomposeunicode false

and this is why. from here

core.precomposeunicode This option is only used by Mac OS implementation of Git. When core.precomposeunicode=true, Git reverts the unicode decomposition of filenames done by Mac OS. This is useful when sharing a repository between Mac OS and Linux or Windows. (Git for Windows 1.7.10 or higher is needed, or Git under cygwin 1.7). When false, file names are handled fully transparent by Git, which is backward compatible with older versions of Git.

like image 51
i-chou Avatar answered Oct 02 '22 23:10

i-chou


Git is a wonderful tool, but it's easy to get lost without a good map of where you are in the forrest of commits.

Here's how to get that map (I call it "gr" for "graph", but you could also call it "map" if you prefer):

git config --global alias.gr 'log --graph --full-history --all --color --decorate'

That's a one-time setup for git. Now whenever you're lost, just take a look at the map:

git gr

Your current location is denoted by the word "HEAD", and any branch names are also listed.

You'll see that you're currently not on any branch, which sounds a lot worse than it really is -- it's actually no big deal, it just means your commits won't go into the master branch the way you want them to.

So just get back on your master branch and commit there:

git checkout master
git add yourfile.txt
git commit -m'Narg'
git push

Also take a look at git gr now and you'll see that HEAD is at the same commit as master, and master is at the same commit as origin/master, which means you're all set.

like image 29
Magnus Avatar answered Oct 02 '22 23:10

Magnus