1.准备工作
安装git,(安装msysGit,对Git进行管理)
记得配置环境变量,git的安装目录下bin和cmd
在Path下添加
;C:\Program Files (x86)\Git\cmd;C:\Program Files (x86)\Git\bin;
2.进行SSH连接
$ssh-keygen -t rsa -C “yourname@qq.com”
注册github的邮箱
然后你会首先要输入sshkey的存储文件名
输入密码
成功则会显示The keyprinter is: 。。。
下一步进行连接测试
现在github 设置页面设置ssh,添加新的sshkey,如图
Title可以随便起,Key需要找到C:\Users\fx50jk.ssh文件夹里面的.pub文件
复制里面全部内容(如果有msysGit或者Cygwin等工具则可以进入~/.ssh)
测试:git -t git@github
这个是成功的
失败时:Permission denied (publickey)
3.代码提交到github
跳转到你要提交代码的目录
$git init
$git add . //指的是把所有文件 添加到本地repository add后加一个文件是添加一个文件
$ git commit -m ‘first commit’//这里是添加commit的message(文件说明)(添加之后必须要提交)
定义远程服务器别名origin
$ git remote add origin git@github.com:yourname/first-project.git
(如果要换文件夹类推git remote add gs http://git.oschina.net/yiibai/git-start.git)
$git push origin master //origin指的是remote 远端地址, master 指的是你的分支。
(
设置Git全局用户配置$ git config –global user.name “msy”
$ git config –global user.email msy@qq.com
)
遇到的问题
- ssh-keygen -t rsa -C “yourname@qq.com”没有改命令
原因没有设置好环境变量 - 测试链接时ssh -t git@github Permission denied (publickey)还有就是knowns_hosts的问题。先查找是否能够找到.ssh文件夹,然后看.pub文件是否已生成,如果没有knowns——hosts或者没有.ssh文件夹就多半就解决了。第二种就是在ssh-keygen的地方输入密码还有文件名是直接回车跳过(我没有尝试。)
- 第三个问题进行提交的时候
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'git@github.com:asantoya/projectnewbies.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes (e.g. 'git pull') before pushing again. See the
'Note about fast-forwards' section of 'git push --help' for details.
问题(Non-fast-forward)的出现原因在于:git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去
1.强推,即利用强覆盖方式用你本地的代码替代git仓库内的内容()不建议
git push -f
2.git的东西pull到本地如果有问题可以在bash上输入如下命令行:
gitconfigbranch.master.remoteorigin
git config branch.master.merge refs/heads/master
之后再git pull下然后提交。或者重新remote一个分支然后git push你的代码吧。
PS:安装好Git就可以用GitGui了如何使用详看