博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【ZZ】Git链接到自己的Github简单的开始
阅读量:6520 次
发布时间:2019-06-24

本文共 2797 字,大约阅读时间需要 9 分钟。

hot3.png

好长时间没上来弄东西了,今天回来先开始弄下Git,之后再继续写uboot与kernel的编译,在版本控制下更加宏观地观察每次的变化。
1、在ubuntu中安装git
$ sudo apt-get install git git-core
2、配置本机的git
$ git config --global user.name "abcd"$ git config --global user.email abcd@efgh.com
3、生成密钥
$ ssh-keygen -t rsa -C "abcd@efgh.com" //邮箱同上
4、提交密钥
vim /home/linx/.ssh/id_rsa.pub //复制里面的密钥
到github网页中登陆自己的账号,然后再account setting中,找到SSH KEY讲复制的密钥加入(需要再次输入github的密码)
5、检验是否链接上了github
$ ssh git@github.com//正常情况下,回显如下PTY allocation request failed on channel 0Hi plinx! You've successfully authenticated, but GitHub does not provide shell access.Connection to github.com closed.
6、首次推送
$ mkdir tmp //创建推送目录$ cd tmp //进入推送目录 $ git init //设置该目录为推送$ touch README //生成readme$ git add README //加入修改列表$ git commit -m 'first commit' //递交修改声明$ git remote add origin git@github.com:abcd/tmp.git //为远程Git更名为origin$ git push -u origin master //推送此次修改
然后各种问题从这里开始了,以下谈一下解决的方法:
问题一:
ERROR: Repository not found.
这个问题是因为在你推送的github账户中,并没有这个Repository。
  解决方法:
  1)
检查自己的github中的Repository,检查自己创建的目录,必须要两者一致
  2)
先git clone下github中的Repository,然后再进行更改,这样就一定一致了
问题二:
Agent admitted failure to sign using the key. Permission denied (publickey)
这个问题是因为你的ssh key并没有加入到你想git的github账户的ssh key中,所以没有访问权限。
  解决方法:
  1)重新拷贝一份当前的~/.ssh/id_rsa.pub中的ssh key到github中添加;
  2)先删除~/.ssh/in_rsa*文件,然后重新ssh-keygen一份sshkey来生成密钥,然后复制到github,接着ssh链接github来检验是否成功联通。
问题三:
//出现如下提示! [rejected] master -> master (non-fast-forward)error: failed to push some refs to ...
  这个问题是因为,github中已经有了这个代码,不允许你覆盖它。
  解决方法:
  1)强制推送,一般不推荐!
    
$ git push -f
  2)
$ git pull
  然后将出现其他提示,具体意思是说branch与merge未指定,git无法选择要推送的分支。
  可以通过修改 .git/config文件中的下列内容
[branch "master"]remote = originmerge = refs/heads/master
  也可以直接命令行修改
$ git config branch.master.remote origin$ git config branch.master.merge ref/heads/master
  目前了解到的也就这三个问题了。
  之后就可以成功得推送了。

1、先查看当前开发分支

$ cat .git/HEADref: refs/heads/master
这里的master是默认分支。
2、查看当前状态
$ git status# On branch masternothing to commit (working directory clean)
目前是无推送状态,即使你推送了一个未做任何改变的文件,当前状态仍未无推送状态。
进入README添加一句之后
$ git add README//之后有两种方法填写推送信息//比较简单的一种,直接写入推送信息,-m 就是 message 的意思$ git commit -m 'message you want to write.'//比较麻烦的一种$ git commit//进入GNU nano编辑器,底行有操作提示
将提示
[master bc30d5d] updated the status.1 file changed, 1 insertion(+)
然后再看一下status
# On branch master# Your branch is ahead of 'origin/master' by 1 commit.#nothing to commit (working directory clean)
3、git中有日志可以查看推送记录
$ git log
4、检查不同
$ git diff//这项操作时要在添加推送之前执行的,否则就看不出哪里不同了
  5、创建分支
git branch test0.1 //创建一个test0.1分支git checkout test0.1 //进入这个分支中来git branch //查看当前分支情况,所在分支前面有'*'号git add -A //将本次修改的所有内容都加入修改列表git commit -m "commit all" //提交说明git push -u origin test0.1 //将此次修改提交到分支test0.1中去
  6、只对项目精简了而没有增加内容
$ git commit -a $ git push -u origin code_ver0.1//分支和账户请勿对号入座

转载于:https://my.oschina.net/u/1178546/blog/157928

你可能感兴趣的文章
Android获取当前时间与星期几
查看>>
jenkins2 multibranch
查看>>
Css定位-定位
查看>>
sort,uniq命令
查看>>
am335x 电容屏驱动添加。
查看>>
JavaScript Unicode字符操作
查看>>
rhel-server-7.2-x86_64无法联网(VMware环境)
查看>>
Nginx配置中的log_format用法梳理(设置详细的日志格式)
查看>>
Atitit 软件工程概览attilax总结
查看>>
优化LibreOffice如此简单
查看>>
【Oracle 数据迁移】环境oracle 11gR2,exp无法导出空表的表结构【转载】
查看>>
秒杀系统设计方案
查看>>
3D印花芭蕾舞鞋为舞者科学地保护双脚
查看>>
冲浪科技获Ventech China数百万美元天使轮融资,发力自动驾驶行业
查看>>
通过ActionTrail监控AccessKey的使用
查看>>
从 JavaScript 到 TypeScript
查看>>
一个mysql复制中断的案例
查看>>
【最佳实践】OSS开源工具ossutil-大文件断点续传
查看>>
Linux常用的服务器构建
查看>>
深入了解 Weex
查看>>