本文参考网上的很多文章,然后自己又走了一遍流程。终于搞懂,遂几下操作的过程。
一、如何伤处Git@OSC的项目
打开项目,在项目的"管理"处,点击删除项目即可。
二、当安装完成git Bush命令行工具后,首先进行配置
git config --global user.name "你的名字"
git config --global user.email "注册邮箱"
三、生成SSH具体办法:
1)查看是否已经有了ssh密钥:cd ~/.ssh 如果没有密钥则不会有此文件夹,有则备份删除 2)生存密钥: $ ssh-keygen -t rsa -C “xxxx@xxx.cc” c必须大写 xxxx@xxx.cc = 你的邮箱 按3个回车,密码为空。
Your identification has been saved in /home/tekkub/.ssh/id_rsa. Your public key has been saved in /home/tekkub/.ssh/id_rsa.pub. The key fingerprint is: 最后得到了两个文件:id_rsa(私钥)和id_rsa.pub(公钥)
检测是否生成文件 $ ls -al ~/.ssh 3)添加密钥到ssh:ssh-add 文件名 如果在添加的过程中,出现: 则需要运行如下的命令:eval `ssh-agent -s` (手动开启即可,建议直接复制<里面是反引号>) 然后再次执行 添加命令:ssh-add ~/.ssh/id_rsa ssh-add ~/.ssh/id_rsa.pub 小插曲:http://www.cnblogs.com/kex1n/p/5229493.html(关于 agent后再次失败的总结)
4)在github、git@osc上添加ssh密钥,这要添加的是“id_rsa.pub”里面的公钥。 打开https://github.com/ ,登陆xuhaiyan825,然后添加ssh。 查看公钥:cat ~/.ssh/id_rsa.pub,复制内容 添加到git@osc上 可以用命令直接查看 公钥: $ cat ~/.ssh/id_rsa.pub 5)测试:ssh git@github.com 或者 git@git.oschina.net
四、Clone 项目 :git clone http://git.oschina.net/xxxxxx/xxxxxx.git
创建特性分支: git checkout -b $feature_name
写代码,提交变更: git commit -am "My feature is ready"
将你的提交推送到 Git@OSC : git push origin $feature_name
在提交页面你可以查看你的变更,例如: http://git.oschina.net/oschina/git-osc/commit/f3dd1c5bae48fa4244e2595a39e750e5606dd9be
命令示例 :git clone git@git.oschina.net:openswc/gobang.git //ssh 链接
git remote add origin git@git.oschina.net:openswc/gobang.git
git add .
git commit -am "gobang first commit"
git push origin master
五、使用git在本地创建一个项目的过程(gitHub 和 git@OSC操作一样)
$ makdir ~/hello-world //创建一个项目hello-world
$ cd ~/hello-world //打开这个项目
$ git init //初始化
$ touch README
$ git add README //更新README文件
$ git commit -m 'first commit' //提交更新,并注释信息“first commit”
$ git remote add origin git@github.com:defnngj/hello-world.git //连接远程github项目
$ git push -u origin master //将本地项目更新到github项目上去
通过ssh操作示例:
例如: 以后的操作就是在本地修改->add->commit->push
六、在提交代码的过程中遇到的问题
如果输入$ Git remote add origin git@github.com:djqiang(github帐号名)/gitdemo(项目名).git
提示出错信息:fatal: remote origin already exists.
解决办法如下:
1、先输入$ git remote rm origin
2、再输入$ git remote add origin git@github.com:djqiang/gitdemo.git 就不会报错了!
3、如果输入$ git remote rm origin 还是报错的话,
error: Could not remove config section 'remote.origin'. 我们需要修改gitconfig文件的内容。
4、找到你的github的安装路径,我的是
C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\etc
5、找到一个名为gitconfig的文件,打开它把里面的[remote "origin"]那一行
删掉就好了!
七、如果输入$ ssh -T git@github.com
出现错误提示:Permission denied (publickey).因为新生成的key不能加入ssh就会导致连接不上github。
解决办法如下:
1、先输入$ ssh-agent,再输入$ ssh-add ~/.ssh/id_key,这样就可以了。
2、如果还是不行的话,输入ssh-add ~/.ssh/id_key 命令后出现报错Could not open a connection to your authentication agent.解决方法是key用Git Gui的ssh工具生成,这样生成的时候key就直接保存在ssh中了,不需要再ssh-add命令加入了,其它的user,token等配置都用命令行来做。
3、最好检查一下在你复制id_rsa.pub文件的内容时有没有产生多余的空格或空行,有些编辑器会帮你添加这些的。
八、如果输入$ git push origin master
提示出错信息:error:failed to push som refs to .......
解决办法如下:
1、先输入$ git pull origin master //先把远程服务器github上面的文件拉下来
2、再输入$ git push origin master
3、如果出现报错 fatal: Couldn't find remote ref master或者fatal: 'origin' does not appear to be a git repository以及fatal: Could not read from remote repository.
4、则需要重新输入$ git remote add origingit@github.com:djqiang/gitdemo.git
九、gitconfig配置文件
Git有一个工具被称为git config,它允许你获得和设置配置变量;这些变量可以控制Git的外观和操作的各个方面。这些变量可以被存储在三个不同的位置:
1./etc/gitconfig 文件:包含了适用于系统所有用户和所有库的值。如果你传递参数选项’--system’ 给 git config,它将明确的读和写这个文件。
2.~/.gitconfig 文件 :具体到你的用户。你可以通过传递--global 选项使Git 读或写这个特定的文件。
3.位于git目录的config文件 (也就是 .git/config) :无论你当前在用的库是什么,特定指向该单一的库。每个级别重写前一个级别的值。因此,在.git/config中的值覆盖了在/etc/gitconfig中的同一个值。
在Windows系统中,Git在$HOME目录中查找.gitconfig文件(对大多数人来说,位于C:\Documents and Settings\$USER下)。它也会查找/etc/gitconfig,尽管它是相对于Msys 根目录的。这可能是你在Windows中运行安装程序时决定安装Git的任何地方。
配置相关信息:
2.1 当你安装Git后首先要做的事情是设置你的用户名称和e-mail地址。这是非常重要的,因为每次Git提交都会使用该信息。它被永远的嵌入到了你的提交中:
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
2.2 你的编辑器(Your Editor)
现在,你的标识已经设置,你可以配置你的缺省文本编辑器,Git在需要你输入一些消息时会使用该文本编辑器。缺省情况下,Git使用你的系统的缺省编辑器,这通常可能是vi 或者 vim。如果你想使用一个不同的文本编辑器,例如Emacs,你可以做如下操作:
$ git config --global core.editor emacs
2.3 检查你的设置(Checking Your Settings)
如果你想检查你的设置,你可以使用 git config --list 命令来列出Git可以在该处找到的所有的设置:
$ git config --list
你也可以查看Git认为的一个特定的关键字目前的值,使用如下命令 git config {key}:
$ git config user.name
2.4 获取帮助(Getting help)
如果当你在使用Git时需要帮助,有三种方法可以获得任何git命令的手册页(manpage)帮助信息:
$ git help
$ git
$ man git-
例如,你可以运行如下命令获取对config命令的手册页帮助:
$ git help config