对不起,我是个新手(尽管我非常熟悉cvs和svn等较老的源码控制系统)……
我的最终目标是通过在本地克隆远程存储库,将文件添加到本地存储库,提交我的更改,然后将本地存储库推送回远程存储库,从而将文件添加到远程存储库(不在我的机器上)。
我试过这个:
git clone ssh://user@server/Users/GitRepo/Project.git
<create file locally>
git add <localfile>
git commit -m "Narg"
git push但它只是说“一切最新的”。
所以我试着一步一步地来,结果变得更困惑了。
git clone ssh://user@server/Users/GitRepo/Project.git
git status它告诉我
# Not currently on any branch
# Untracked files:
followed by a long list of Untracked files.这似乎真的很奇怪,如果我只是克隆存储库,为什么文件会被取消跟踪?
如果很重要,远程存储库是全新的,通过svn2git创建。
如果我键入
git remote show origin它告诉我
* 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)如果我输入
git branch -a它告诉我
* (no branch)
master
remotes/GitRepo/master
remotes/origin/HEAD -> origin/master
remotes/origin/master那么,我是不是很困惑,一切都在正常工作?或者是我做错了git命令?或者是我错误地创建了存储库,所以git命令永远不会正常工作?
谢谢,克里斯
发布于 2014-11-01 18:52:30
git config -l
如果当前git存储库的core.precomposeunicode=true
尝尝这个,
git config core.precomposeunicode false
这就是为什么。from here
core.precomposeunicode此选项仅由Git的Mac实现使用。当为core.precomposeunicode=true时,Git会还原Mac对文件名进行的unicode分解。当在Mac OS和Linux或Windows之间共享存储库时,这很有用。(需要Windows 1.7.10或更高版本的Git,或者cygwin 1.7下的Git)。如果为false,则文件名由Git完全透明地处理,Git向后兼容旧版本的Git.
发布于 2013-10-25 01:00:42
Git是一个很棒的工具,但是如果没有一个很好的地图,你很容易迷失方向。
下面是如何获取映射(我将其称为"gr“,表示”图“,但如果您愿意,也可以将其称为" map”):
git config --global alias.gr 'log --graph --full-history --all --color --decorate'这是git的一次性设置。现在,当你迷路的时候,只要看看地图就行了:
git gr您当前的位置由单词"HEAD“表示,并且还列出了所有分支机构的名称。
您将看到,您当前没有在任何分支上,这听起来比实际情况要糟糕得多--这实际上没什么大不了的,它只是意味着您的提交不会以您希望的方式进入主分支。
因此,只需回到您的主分支并在那里提交:
git checkout master
git add yourfile.txt
git commit -m'Narg'
git push现在再看看git gr,你会发现HEAD与master处于相同的提交状态,而master与原始/master处于相同的提交状态,这意味着您已经做好了准备。
发布于 2018-08-16 11:27:53
对于其他可能通过谷歌到达这里的人。
我遇到了同样的问题--除了我能够推送,并且没有收到任何“一切都在更新”的消息。
问题是windows和mac不同于linux,是不区分大小写的;但repo是在区分大小写的操作系统上创建的,有些文件有两个版本,只有大写和小写字母不同。
有一个关于它的问题here。
https://stackoverflow.com/questions/19569805
复制相似问题