首页 > 关于git 如何使用提交到github.com的问题,让人十分不解

关于git 如何使用提交到github.com的问题,让人十分不解

已经在github.com建立了一个repository,想实现的就是,像SVN提交那样用git到github.com。安装遇到遇到很多问题

1)以下几个必须全部安装吗

(1).git-1.9.4-preview.exe
(2).TortoiseGit 
(3).github.com 官网的 git for windows

似乎是必须三个必须安装,否则就无法使用?为什么非得安装(1)git.exe?库是在远程的
还有第(3)个为什么也必须安装才可以使用?

2)创建的问题,克隆到的目录必须为空?

我已经在github.com上创建了一个 repository,然后我打算将本地的 d:/website/example.com/www(这是DOCUMENT_ROOT) 作为源码目录提交过去,可是 当我当前位置是在 d:/website/example.com 这里的时候,点击克隆。之后却变成了 d:/website/example.com/example.com,然后将位置切换到 d:/website,再克隆,却一直失败,提示目录 d:/website/example.com 不是空目录。
但是我本地已经做好了,难道非得先新建一个空目录,克隆之后,再复制原先已经做好的过去?

3) 右键Git提交->master 必须输入备注信息,否则无法提交?

克隆了之后,把原先做好的源码再粘贴到了目录 d:/website/example.com/www下,目录下点击右键 Git提交->master,但是却发现必须输入“日志信息”否则无法提交?如果“日志信息”这个框没有输入内容,那个“确定按钮”就始终是灰色的。

4)为什么安装了之后右键菜单的这几个不是重复的吗?

安装完tortoiseGit Git这几个软件之后,右键菜单变得非常长。

1.Git add all file 这个是用来做将文件添加.git目录中配置好的远程github.com上吗?
如果是这样,那岂不跟 他下面的“Git提交到->master”功能一样了?(点击无反应)

2.Git Commit Tool 点击后弹出提交框,但是无法提交。是提交到那里去?

5)很多疑问,很多不解

1.仅仅是为了将本地的提交到远程github.com托管,
已安装了TortoisGit客户端后还必须安装git.exe吗

2.电脑Win7里面已安装了TortoisSVN,文件夹图标可以显示。
但安装后的TortoisGit文件夹图标不显示。是否是冲突?

3.右键菜单中的 这几项“Git add all file”、“Git commit tool”
功能是否跟TortoisGit 功能是重合的?
可否去掉,右键菜单太长了。

4.“Git 同步”是否就是“将本地的同步到远程”?
还是说“同步远程到本地”?点击后再点击弹出的面板上的“推送”
却需要输入Github.com的用户名,密码?
但是我使用“Git 提交->master”却不需要输入用户名密码。

一开始觉得原理应该很简单的,安装一个可以提交的客户端就可以了。但是现在却似乎不是想象的那样,弄得很晕。我使用SVN的时候安装TortoisSVN就可以用来提交了,其他什么都不需要安装。


这么好用的github,被你理解的这么难搞。网上很多博文都有介绍的。你怎么会理解成这个样子。。。。svn和github根本不同,不要相提并论。


  1. TortoisGit是GUI版的git客户端,git.exe是命令行工具,两者功能是一样的。你可以只装一个,但会丧失图形界面/命令行下的便利性。至于GitHub for Windows只是GitHub自己的一个客户端,你可以不装。
  2. git就是这么规定的,每个仓库一个目录,这个目录会放在你的目标目录下,事先不能存在,git会创建
  3. git的规定,每次commit必须写comment,再说这也是个好习惯不是?
  4. git add ...是把文件放入git的管理之下,下次commit的时候会提交到本地仓库
  5. ……

    1. 1
    2. 这个不清楚,你可以看TortoisGit的帮助,但我想应该不会
    3. 这个应该是不同的客户端自己分别加进去的,你不装那么多个客户端就应该没有那么多菜单项了
    4. git可以做双向同步,push是把本地更新的内容推送到远端,pull是把远端更新的内容取回本地

git的原理是挺简单的,但和SVN不一样,如果你把SVN的概念套到git上会把自己搞糊涂。


楼上有人针对你的问题给出了对应的回答,我看楼主的情况想再补充点内容。

最后祝您好运~


你只需要 Github for Windows

至於其他指令,可以慢慢來了解
"Sync" 就這一鍵


如果不会敲命令就别用 git 了。
要用就好好用,安装之前先了解下基本的数据结构和命令。


Git 主打的是命令行操作, *nix 系统当中装上 git 能跑命令行基本 OK 了.
图形工具很多版本, 结果越高搞复杂.
建议先熟悉命令行工具, 然后找顺手的图形工具用.


首先你要理解的是,Git的工作跟Subversion不同的之处:Subversion的所有操作都是直接对服务端,你做任何查看、添加文件、提交,都是直接操作服务端的代码库。用Subversion的思维去理解Git,可以理解为Git把这些操作分成了两步,第一步是在本地代码库,第二步是远程代码库(比如Github),这两步是不同的命令完成的(而不是像svn那样合并在一步完成)。你做的操作,除了clone、push、pull、fetch、ls-remote等少数几个命令是针对远程代码库的操作,其他的比如查看log、添加文件、提交、分支管理、重置等操作全部是针对本地仓库。
正是因为分为了本地库和远程库,所以Git才可以离线、实现分布式,而不是像svn那样必须绑定在一个代码库上、必须在线才能操作。

下面回答你的问题:

`>1)以下几个必须全部安装吗

其实只需要安装git的命令行工具git-1.9.4-preview.exe,其他的都不是必须的

2)创建的问题,克隆到的目录必须为空?

是的,clone操作会新建目录,如果目录已经存在,那么它应该是覆盖还是合并呢?覆盖的话,你原来的东西就丢了。合并的话,这个仓库里面就混杂了其他的东西。

如果你知道你自己在做什么,你可以不必删除这个目录。在这个目录里面自己用这些命令把远程仓库合并到你自己的仓库里。

git init
git remote add
git fetch

3) 右键Git提交->master 必须输入备注信息,否则无法提交?

对应git commit命令,默认情况下提交commit必须要有comment。你可以提交一个没有comment的commit,不过得用命令行git commit --allow-empty-message

1.Git add all file 这个是用来做将文件添加.git目录中配置好的远程github.com上吗?
如果是这样,那岂不跟 他下面的“Git提交到->master”功能一样了?(点击无反应)

“Git add all file” 对应命令 git add .,不是添加到远程github中,而是添加到本地仓库的cache里面,之后你做git commit的时候,提交的内容就是cache里面的这些文件。没有添加过的文件不会包含在commit里面。

“Git提交到->master”应该也不是提交到远程github上,而只是提交到你的本地仓库的master分支上。如果你还没有git add文件,那么就表示没有任何修改要提交,当然就没有反应。还是建议你用命令行,最直观,有什么问题都能看的清清楚楚。

1.仅仅是为了将本地的提交到远程github.com托管,
已安装了TortoisGit客户端后还必须安装git.exe吗

TortoisGit只是git的一个"壳",所有的操作最终还是去调用git的命令行来完成的.所以必须安装git.其实我建议你直接用命令行,比起GUI来说更加直截了当,理解起来也容易一些。

2.电脑Win7里面已安装了TortoisSVN,文件夹图标可以显示。
但安装后的TortoisGit文件夹图标不显示。是否是冲突?

可能需要重启。

3.右键菜单中的 这几项“Git add all file”、“Git commit tool”
功能是否跟TortoisGit 功能是重合的?
可否去掉,右键菜单太长了。

这几个菜单应该是别的工具产生的?Git add all file对应的命令是git add .

4.“Git 同步”是否就是“将本地的同步到远程”?
还是说“同步远程到本地”?点击后再点击弹出的面板上的“推送”
却需要输入Github.com的用户名,密码?
但是我使用“Git 提交->master”却不需要输入用户名密码。

git的提交(commit)实际上只是提交到本地的仓库里,不像svn那样会提交到服务端.而"同步"实际上是push操作,将本地的已经提交过的commit发到另外一个仓库里.在本地仓库commit不需要密码,因为这是你自己的仓库.push到远程仓库需要密码,因为那是另外一个仓库.

【热门文章】
【热门文章】