不灭的焱

革命尚未成功,同志仍须努力

作者:php-note.com  发布于:2017-03-10 19:29  分类:电脑/软件使用  编辑

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入门指南九:远程仓库的使用

分支关联

Git新建 本地分支 与 远程分支 关联问题:git branch --set-upstream

git branch --set-upstream test origin/test

分支

[廖雪峰] Git 分支管理(1):创建与合并分支(HEAD、master、dev、指针)

[廖雪峰] Git 分支管理(2):Bug 分支

[廖雪峰] Git 分支管理(3):分支管理策略

Git 修复 bug 切换分支时,如何保存修改过的代码(即如何保存现场)?

使用 Git 新建分支以及管理分支(在你的github分支上, 你需要保持你的 主分支 干净, 我说的干净就是没有任何改变,那么你可以在任何时候从你的主分支新建一个分支。)

对 Git 分支 master 和 origin/master 的一些认识

Git 代码更新:git fetchgit 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 相关操作

GitHub 的 Pull Request 是指什么意思?

Git 与远程 repository 同步 tag 和 branch?

Git 的 Patch 功能

日志

git log 常用命令及技巧

配置本地 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_rsaid_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 代码托管系统

12 款各种编程语言实现的 Git 代码托管系统

Gogs:是一款极易搭建的自助 Git 服务。目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。

[github] [官网] [二进制安装]

[荐] Gitea:Git with a cup of tea,在 Gogs 基础上,发展起来的 自助 Git 服务系统。Gogs是一个个人维护的版本,而Gitea是一个社区组织维护的,版本迭代更新快

[github] [官网] [二进制安装] [注意:建议到官网上 下载 执行包,github 上下载太慢]

CentOS 6.8 搭建 Git 代码托管系统 Gitea

 


 玩转 Git

【Git配置技巧】01. 配置文件git config介绍

【Git配置技巧】02. 丰富log显示信息

Git入门指南一:基本介绍和创建Git仓库

Git入门指南二:初次运行Git前的配置

Git入门指南三:Git工作流和查看文件状态

Git入门指南四:跟踪新文件和忽略某些文件

Git入门指南五:查看已暂存和未暂存的更新/提交更新

Git入门指南六:移除文件和移动文件

Git入门指南七:查看提交历史

Git入门指南八:Git撤消操作

Git入门指南九:远程仓库的使用

Git入门指南十:应用标签

Git入门指南十一:Git branch 分支与合并分支