git pull 时,报错:
Git Pull Failed: refusing to merge unrelated histories
解决方案:
git pull origin master --allow-unrelated-historie
Git 常用命令图
- Workspace:工作区
- Index / Stage:暂存区
- Repository:本地仓库
- Remote:远程仓库
在线教程
[廖雪峰] Git 教程 、《廖雪峰 . Git 教程》学习总结 、[阮一峰] Git 远程操作详解
Git 实战 、Github 入门与实践 、Git 简明教程 、关于 Git 的几个使用技巧
总结自己的 Git 常用命令 、Git 常用命令详解(二) 、Git 常用命令解说 、Git 常用命令及思维导图
git 使用(9)git pull 和 git fetch、git reset 和 git revert 的区别用法
github 常见操作和常见错误!错误提示:fatal: remote origin already exists.(Git 配置命令 gitconfig 详解)
仓库
分支关联
Git新建 本地分支 与 远程分支 关联问题:git branch --set-upstream
git branch --set-upstream test origin/test
分支
[廖雪峰] Git 分支管理(1):创建与合并分支(HEAD、master、dev、指针)
Git 修复 bug 切换分支时,如何保存修改过的代码(即如何保存现场)?
使用 Git 新建分支以及管理分支(在你的github分支上, 你需要保持你的 主分支 干净, 我说的干净就是没有任何改变,那么你可以在任何时候从你的主分支新建一个分支。)
对 Git 分支 master 和 origin/master 的一些认识
Git 代码更新:git fetch 和 git pull 的区别 、git fetch 和 git pull 之间的区别 、Git 命令之 git fetch 的用法 、Git 命令之 git fetch 用法 2 (拉取项目)
Git 分支 Rebase 详解 、Git rebase 使用详解(注意:会把之前的 commit 记录删除掉,慎用!)
标签
Git tags 和 Branches 的区别是什么呀,什么时候应该创建一个 Tag?
Intellij Git tag 、Git 打 Tag 相关操作
Git 与远程 repository 同步 tag 和 branch?
日志
配置本地 Git
git config --global user.name "wenjianbao" git config --global user.email "lesjava@163.com" git config --global core.autocrlf false
配置账号的 SSH 公钥
第 1 步:创建 SSH Key
在用户主目录下,看看有没有 .ssh
目录,如果有,再看看这个目录下有没有 id_rsa
和 id_rsa.pub
这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开 Shell(Windows 下打开 Git Bash),创建 SSH Key:
ssh-keygen -t rsa -C "lesjava@163.com"
你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个 Key 也不是用于军事目的,所以也无需设置密码。
如果一切顺利的话,可以在用户主目录里找到 .ssh
目录,里面有 id_rsa
和 id_rsa.pub
两个文件,这两个就是 SSH Key 的秘钥对,id_rsa
是私钥,不能泄露出去,id_rsa.pub
是公钥,可以放心地告诉任何人。
第 2 步:登录 GitHub,打开“Account settings”->“SSH Keys”页面
然后,点“Add SSH Key”,填上任意 Title ,在 Key 文本框里粘贴 id_rsa.pub
文件的内容:
特别注意:
当 用 vim 打开 id_rsa.pub 时,中间会换行显示,拷贝到本地的文本编辑器时,要记得 去掉“中间的换行”,让它一行显示;
点 “Add Key”,你就应该看到已经添加的 Key:
为什么 GitHub 需要 SSH Key 呢?因为 GitHub 需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而 Git 支持 SSH 协议,所以,GitHub 只要知道了你的公钥,就可以确认只有你自己才能推送。
当然,GitHub 允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的 Key 都添加到 GitHub,就可以在每台电脑上往 GitHub 推送了。
Git 代码托管系统
Gogs:是一款极易搭建的自助 Git 服务。目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。
[荐] Gitea:Git with a cup of tea,在 Gogs 基础上,发展起来的 自助 Git 服务系统。Gogs是一个个人维护的版本,而Gitea是一个社区组织维护的,版本迭代更新快。
[github] [官网] [二进制安装] [注意:建议到官网上 下载 执行包,github 上下载太慢]
CentOS 6.8 搭建 Git 代码托管系统 Gitea