Win7 x64 下的Git入门记录

不在状态。看来实在不能熬夜。

 

从下午开始在win7(64位)下捣鼓git(使用的是"PortableGit-1.8.4-preview20130916"解压就能用),历经***@¥%#@¥…终于搞定。过程如下:

1.首先在github网站的自己的账户建立一个公共仓库(就是网上其他人也可以看到,也可建立私有的,收费)(若没有账号可注册一个GitHub账号,地址:https://github.com/,注册后执行1.)

38100919

2.之后会出现创建完成的界面,如下:

38871221

3.在你解压后的文件夹中打开git-bash.bat,MINGW32便运行了。

①先把公钥送到服务器,否则无法通信。【①②③④为设置SSH Key】

$ ssh-keygen 之后会依次出现3次提示,等待输入,3次均回车即可

40491869

②去用户主目录下(即c/user/你的用户名/.ssh),打开id_rsa.pub文件,拷贝其中内容(就是我们要的key)。

③到github网站你的账户中设置公钥

41356145

④这样客户端就可以和github通信了,可以测试下:

$ ssh git@github.com 然后 yes

42575714

⑤设置用户名和email:

$ git config --global user.name "你的github账户名"

$ git config --global user.email "你的github邮箱地址"

4.准备阶段完成,进行实际的项目创建、提交等

①在本地创建项目文件夹(如果已经有项目,可直接cd进入,略过此部)

$ mkdir 文件夹名字

$ cd 文件夹名字

②用命令行touch或者直接新建文件

$ touch 文件名

③本地仓库初始化,本地生成.git文件夹

$ git init

④添加任务(生成快照并存入项目索引)

$ git add 文件名

⑤本地提交到当前代码库(项目索引提交)

$ git commit -m "first commit"

⑥以上操作均在本地完成,然后把本地库和github网站上的远程库进行关联

$ git remote add origin SSH地址(第2步中你的远程仓库地址)

⑦推送本地库到远程仓库

$ git push -u origin master

5.登陆远程仓库,查看已经有了,OK,搞定。

忙一下午就为了这张图--

47310298

*************************************************************************

之前出现的问题:

最后一步提交代码到github仓库 git push origin master 后:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

> @ WARNING: UNPROTECTED PRIVATE KEY FILE! @

> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

> Permissions 0644 for

> '/h/Users/Tim/.ssh/id_rsa' are too

> open. It is recommended that your

> private key files are NOT accessible

> by others. This private key will be

> ignored. bad permissions: ignore key:

> /h/Users/Tim/.ssh/id_rsa Permission

> denied (publickey).

chmod命令无效,google后原来是Cygwin64的原因(但具体是什么原理还不懂),解决办法就是:

删除windows环境变量中的CYGWIN,只知道git使用的mingw32会把所有文档当做644权限,文件夹755权限,(比较奇怪啊)

46884712

网址如下:

http://stackoverflow.com/questions/1556119/ssh-private-key-permissions-using-git-gui-or-ssh-keygen-are-too-open

****************************以下为补充内容*******************************

第一次push的时候,git push -u origin master的-u参数代表记住origin master,这样以后只有直接使用git push即可,很方便。

Github上的是本地的一份镜像,本地修改完毕后需要推送过去。多人协作时可以先克隆下来,然后每人在本地都有一份完整拷贝,修改后进行推送。

.ssh 目录中两个文件 id_rsa 和 id_rsa.pub,其中 id_rsa 是私钥,一定不要共享给别人;id_rsa.pub 是公钥,里面的内容复制到“个人资料”“SSH 密钥”“添加新密钥”里面。这样就完成了 SSH Key 的生成和授权。

**************************************************************************

其他解释:

假设你创建好了一个项目,并切换到项目的根目录下面:

  1. $ git status //查看当前项目下所有文的状态,如果第一次,你会发现都红颜色的,因为它还没有交给git/github管理。
  2. $ git add . //(.)点表示当前目录下的所有内容,交给git管理,也就是提交到了git的本地仓库。
  3. Ps:git的强大之处就是有一个本地仓库的概念,在没有网络的情况下可以先将更新的内容提交到本地仓库。
  4. $ git commit –m”new natter ” //对你更新或修改了哪些内容做一个描述。
  5. $ git remote add origin git@github.com:defnngj/hibernate-demo.git
  6. //如果你是第一次提交项目,这一句非常重要,这是你本地的当前的项目与远程的哪个仓库建立连接。
  7. Ps: origin可以改为别人的名字,但是在你下一次push(提交)时,也要用你修改之后的名字。
  8. $ git remote -v //查看你当前项目远程连接的是哪个仓库地址。
  9. $ git push -u origin master //将本地的项目提交到远程仓库中。

    来源: <http://blog.csdn.net/johnnywww/article/details/8667168>

posted @ 2013-11-25 23:10  jackhai9  阅读(374)  评论(0编辑  收藏  举报