Git 教程
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件
Git 与常用的版本控制工具 CVS, Subversion 等不同采用分布式版本库的方式不必服务器端软件支持
国内访问快 //gitee.com/ 有些开源没有
国外的 //github.com/ 开源的程序多国内访问慢
Github慢的解决方案总汇
Git报错解决git@gitee.com: Permission denied (publickey).
报错缘由 本地(或服务器上)没有生成SSH公钥git
解决方法
第一步 SSH公钥 在Terminal中输入下面的命令 换成自己的邮箱 goodlucktou@qq.com
ssh-keygen -t rsa -C "goodlucktou@qq.com"
一路回车便可 生成SSH公钥
若是从新生成的话会覆盖以前的SSH公钥
第二步 在Terminal中输入命令ssh -v ssh -v git@gitee.com
第三步 在Terminal中输入命令ssh-agent -s
第四步在Terminal中输入以下命令$ ssh-add ~/.ssh/id_rsa
若是遇到这个问题 can not open connection to you authentication agent 不要慌
在Terminal中输入命令$ eval `ssh-agent -s`
紧接着再输入 $ ssh-add ~/.ssh/id_rsa
问题已解决!完美!
第五步 找到id_rsa.pub
用文本方式打开,将里面的内容所有复制
Gitee(码云)登陆帐号 添加SSH公钥
若是你的邮箱收到信息,则公钥添加成功,这个问题天然也就解决了
Git 与 SVN 区别
Git 不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。
如果你是一个具有使用 SVN 背景的人,你需要做一定的思想转换,来适应 Git 提供的一些概念和特征。
Git 与 SVN 区别点:
1、Git 是分布式的,SVN 不是:这是 Git 和其它非分布式的版本控制系统,例如 SVN,CVS 等,最核心的区别。
2、Git 把内容按元数据方式存储,而 SVN 是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似 .svn、.cvs 等的文件夹里。
3、Git 分支和 SVN 的分支不同:分支在 SVN 中一点都不特别,其实它就是版本库中的另外一个目录。
4、Git 没有一个全局的版本号,而 SVN 有:目前为止这是跟 SVN 相比 Git 缺少的最大的一个特征。
5、Git 的内容完整性要优于 SVN:Git 的内容存储使用的是 SHA-1 哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。
Git 快速入门
也提供了 Git 快速入门版本,点击 Git 简明指南 查看。
入门后建议通过本站详细学习 Git 教程。
Git 完整命令手册地址:http://git-scm.com/docs
PDF 版命令手册:github-git-cheat-sheet.pdf
千年的回眸
重置本机git设置,在命令行输入命令:
git config --global credential.helper store
☞ 这一步会在用户目录下的.gitconfig文件最后添加:
[credential]
helper = store
现在push你的代码 (git push), 这时会让你输入用户名密码, 这一步输入的用户名密码会被记住, 下次再push代码时就不用输入用户名密码啦!
☞这一步会在用户目录下生成文件.git-credential记录用户名密码的信息.
☞ git config --global 命令实际上在操作用户目录下的.gitconfig文件, 我们cat一下此文件(cat .gitconfig), 其内容如下:
[user]
name = alice
email = alice@aol.com
[push]
default = simple
[credential]
helper = store
git config --global user.email "alice@aol.com"上面的email
git config --global push.default matching 上面的push段中的default字段
git config --global credential.helper store 上面最后一行的值
千年的回眸
参考地址