Git工具的使用
1.使用Git clone命令从github上同步github上的代码库时,
如果使用SSH链接(如我自己的OTA项目:git clone git@github.com/Starstok/OTA.git),
而你的SSH key没有添加到github帐号设置中,系统会报下面的错误:
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
这时需要在本地创建SSH key,然后将生成的SSH key文件内容添加到github帐号上去。
创建SSH key的方法很简单,执行如下命令就可以:
ssh-keygen
然后系统提示输入文件保存位置等信息,连续敲三次回车即可,生成的SSH key文件保存在中~/.ssh/id_rsa.pub
然后用文本编辑工具打开该文件,我用的是vim,所以命令是:
vim ~/.ssh/id_rsa.pub
或者
gedit ~/.ssh/id_rsa.pub
接着拷贝.ssh/id_rsa.pub文件内的所有内容,将它粘帖到github帐号管理中的添加SSH key界面中。
打开github帐号管理中的添加SSH key界面的步骤如下:
1. 登录github
2. 点击右上方的Accounting settings图标
3. 选择 SSH key
4. 点击 Add SSH key
在出现的界面中填写SSH key的名称,填一个你自己喜欢的名称即可,然后将上面拷贝的~/.ssh/id_rsa.pub文件内容粘帖到key一栏,在点击“add key”按钮就可以了。
添加过程github会提示你输入一次你的github密码
添加完成后再次执行git clone就可以成功克隆github上的代码库了。
以上内容来自:
http://blog.csdn.net/keyboardota/article/details/7603630
2.使用git工具提交源码
用终端进入要提交源码的当前目录
git init //创建一个空的 Git 版本库或重新初始化一个已存在的版本库
git add * //添加当前目录所以的文件到git库
git commit -m "first commit" //第一次提交,-m 的参数是提交修改的备注
git remote add origin https://github.com/Starstok/OTA.git //远程到Starstok的OTA项目
git push -u origin master //把源码推到master分支
根据提示:分别输入用户名,密码
3.在同一个库(Repository)下,创建多个分支,并且提交源码到新建的分支
git init
git add *
git commit -m "first commit"
git branch //查看当前库的所以分支
git branch test //新建名为test的分支
git branch //再次查看确认是否建立新分支
git checkout test //切换到test分支
git push -u origin test //把源码推到test分支
4.怎么样删除推到github分支下的源码
git init
git rm README.md //删除git下的readme.md
git init
git commit -m "first commit" //更新git库
git push -u origin master //把源码推到master分支
5.出现以下错误解决方法
To https://github.com/Starstok/Starstok.github.io.git ! [rejected] master -> master (fetch first)
error: 无法推送一些引用到 'https://github.com/Starstok/Starstok.github.io.git'
提示:更新被拒绝,因为远程仓库包含您本地尚不存在的提交。这通常是因为另外
提示:一个仓库已向该引用进行了推送。再次推送前,您可能需要先整合远程变更
提示:(如 'git pull ...')。
提示:详见 'git push --help' 中的 'Note about fast-forwards' 小节。
解决方案:
git push -u origin +master
强行更新。具体为什么,没研究。
6.在终端输入git会出现其工具的使用方法
Git使用视频教程: