高峰之巅 发表于 2017-6-4 07:30:42

Git 教程

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 实战 、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 分支管理(1):创建与合并分支(HEAD、master、dev、指针)
  [廖雪峰] Git 分支管理(2):Bug 分支
  [廖雪峰] Git 分支管理(3):分支管理策略
  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 相关操作
  GitHub 的 Pull Request 是指什么意思?
  Git 与远程 repository 同步 tag 和 branch?
  Git 的 Patch 功能

日志
  git log 常用命令及技巧

配置本地 Git

git config --global user.name "phpgo"
git config --global user.email "phpgo8642@163.com"
git config --global core.autocrlffalse

配置账号的 SSH 公钥

第 1 步:创建 SSH Key
  在用户主目录下,看看有没有 .ssh 目录,如果有,再看看这个目录下有没有 id_rsa 和 id_rsa.pub 这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开 Shell(Windows 下打开 Git Bash),创建 SSH Key:

ssh-keygen -t rsa -C "phpgo8642@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 文件的内容:

  点 “Add Key”,你就应该看到已经添加的 Key:

  为什么 GitHub 需要 SSH Key 呢?因为 GitHub 需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而 Git 支持 SSH 协议,所以,GitHub 只要知道了你的公钥,就可以确认只有你自己才能推送。
  当然,GitHub 允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的 Key 都添加到 GitHub,就可以在每台电脑上往 GitHub 推送了。

Git 代码托管系统
  12 款各种编程语言实现的 Git 代码托管系统
  Gogs:是一款极易搭建的自助 Git 服务。目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。
   [官网] [二进制安装]
  [荐] Gitea:Git with a cup of tea,在 Gogs 基础上,发展起来的 自助 Git 服务系统。Gogs是一个个人维护的版本,而Gitea是一个社区组织维护的,版本迭代更新快。
   [官网] [二进制安装] [注意:建议到官网上 下载 执行包,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 分支与合并分支
页: [1]
查看完整版本: Git 教程