Git

如何开始使用? 跟着如下步骤

  1. 在浏览器中输入url:github.com。
  2. 然后输入用户名和密码。
  3. 在your repositories菜单栏那里点击New Repository。
  4. 输入Repository Name。
  5. 点击Create repository。
  6. 进入你的Repository页面,点击Clone or download, 点击 Use SSH。
  7. 看到如下格式的SSH, git@...com:xxxx/repository.git,复制
  8. 打开git bash,在里面输入命令行 git clone git@...com:xxxx/repository.git
  9. 但是clone不了,报错了,因为没设置公匙。
  10. 怎么办呢?创建公钥私钥对。在git bash上输入命令行 ssh-keygen -t rsa -b 4096 -C "你的github邮箱"
  11. 输入命令后,一直按回车,最后变成这个样子,在~/.ssh目录下生成了公钥id_rsa.pub和私钥 id_rsa。
  12. 然后显示文件,在git bash输入cat ~/.ssh/id_rsa.pub。 或也直接打开这个文件下,用编辑器打开这个文件直接拷贝。
  13. 拷贝好之后,重新打开github网页,点击你的头像,进入setting,左侧SSH and GPG keys。然后单击New SSH Key,输入title,把key完整的拷贝进key
  14. 好了,现在你的个人电脑有权限了。重新输入命令行git clone ....
  15. clone完毕后,cd到仓库,然后touch个文件,随便写入点内容
  16. git add .
  17. git commit -am "say something"。
  18. git push origin master

到此,你就基本掌握git bash和git hub的配合使用了。

Git原理

关于版本控制

版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。

  • 本地版本控制系统
  • 集中式版本控制系统(SVN); Software Version Number
  • 分布式版本控制系统(Git)

Git优势

诞生自2005, Linux开源社区

  • 速度
  • 简单的设计
  • 允许上千个并行分支
  • 分布式

重要概念

  • 已修改(modified)修改了某个文件,但还没有提交保存。
  • 已暂存(staged)把已修改的文件放在下次提交时要保存的清单中。
  • 已提交(committed)该文件已经被安全地保存在本地数据库中了。

配置用户名和邮箱

git config --global user.name "xxxx"
git config --global user.email xxxx@xx.com

检查有没有提交到暂存区

git status

noting to commit or something to commit

把所有的文件(添加删除修改)都放入到暂存区

git add .

把暂存区的更新提交到本地库

git commit -am "add file"
(git commit with a message "add file")

git status 检查文件的状态(在哪儿)


把当前本地库里的改动推送到远程仓库(origin)的master分支

git push
把本地仓库的文件推送到远程仓库

第一次使用 git push origin master


修改删除文件

把远程仓库的变动更新合并到本地仓库

git pull

修改文件

vim a.md
git add . 或者 git add 文件名.文件扩展名

这里需要注意,如果提交消息包含大量字符窜,提交参数不用加m

此时会进入vim界面,按下i进入编辑状态,进行编辑

编辑完成后按下esc进入命令状态,输入:wq! 或 :aq! 保存退出vim

git commit -a | git commit -am
(git commit -ammend) | (git commit -ammend message)

git push origin master

删除文件

rm a.md

git add .

git commit -am "删除a.md"

如果之前已经git push origin master过,后面可以直接简化成git push

问题

  • origin代表什么? 就是仓库主干master的名字, 可以通过git remote -u mastername 主干地址

本地创建一个git项目仓库推送到远程空仓库

  1. mkdir newProject
  2. cd newProject
把一个文件夹初始化成一个本地git仓库
注意仓库和文件夹的区别在于仓库下有一个隐藏的.git文件夹,里面有一些信息。对于一个仓库,删除.git文件夹,就变成一个普通文件夹了。
  1. git init
  2. touch index.html
  3. echo "hello" > index.html
  4. git commit -am "init"
  5. git remote add origin git@github.com:xxxx/xxxx.git, 这里把远程库的地址添加个标签叫origin
  6. git push -u origin master
  7. 查看本地库里记录的远程库地址 git remote -v
  8. 推送到远程库地址 git push origin master。(慎用,这样会强制推送,会覆盖别人的代码,git push -f origin master。)
  9. 在添加一个远程库的标签,git remote add gitlab git@gitlab.com:abc/blog.git
  10. 推送到gitlab标签的地址上,git push gitlab master
  11. 修改origin标签对应的地址,git remote set-url origin git@github.com:xxx/blog3.git
  12. 把gitlab标签改名为coding,git remote rename gitlab coding

分支操作 很重要的一部分

查看有哪些分支,git branch -a

创建本地仓库dev分支,git branch dev

切换到dev分支,git checkout dev

touch b.md

git add .

git commit -am "add b.md"

推送到origin地址的dev分支上,git push origin dev

合并分支,切换回master主干, git checkout master。git merge dev,在主干上合并dev分支。

冲突

当自己和别人修改同一个文件的同一个地方,在执行git pull时更新本地合并时, 会出现冲突。

  1. 修改冲突文件
  2. 重新提交

Git与GitHub的使用相关推荐

  1. Git与github基本操作

    一.  git安装与简单配置 1.      git的安装 首先进入git的官方网站git-scm.com 下载自己电脑对应的git版本,然后点击安装即可 点击上图的红色部分进行下载 安装的时候直接默 ...

  2. 用 Git 和 Github 提高效率的 10 个技巧!

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 来源:segmentfault.com/a/11900000038 ...

  3. 在Pycharm工具中配置集成Git和GitHub

    在Pycharm工具中配置集成Git和GitHub 1.集成Git. 打开Pycharm,  点击File-->Settins-->Version Control-->Git 然后在 ...

  4. R,Git和Github(下)

    作者:Wenhu 博客:http://bioinfostar.com/ 本讲第一部分,介绍git的"足够你用"命令:本讲为第二部分,介绍github的主要用途,包括版本管理.分枝管 ...

  5. clone git 修改保存路径_Git和Github详细入门教程(别再跟我说你不会Git和Github)

    前言:成功不是将来才有的,而是从决定去做的那一刻起,持续累积而成.你好,我是梦阳辰,快和我一起搞定Git和Github吧. 文章目录 01.Git概述 02.Git的本地仓库操作 Git的版本回退操作 ...

  6. 关于Git和Github你不知道的十件事

    Git 和 GitHub都是非常强大的工具.即使你已经使用他们很长时间,你也很有可能不知道每个细节.我整理了Git和GitHub可能提高日常效率的10个常用技巧. GitHub 快捷键: t 和 w ...

  7. Windows 下使用Git管理Github项目

    Git Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理.最初由Linus Torvalds编写,用作Linux内核代码的管理.在推出后,Git在其它项目中也取得 ...

  8. 用Git向gitHub上传项目

    用Git向gitHub上传项目 1.安装git 2.在git安装目录下,运行git-bash.exe  如图所示 3.在git中绑定你注册gitHub是的用户名.邮箱. $ git config -- ...

  9. git和github的关系

    写在前面:我身边好多人问我git和github的区别,想必对于好多人没学过的大佬们恐怕也是一脸懵逼,但是不知道也是不行的,所以我今天就来讲一讲这二者的区别和联系. 用一句话形容这二者的关系:git是弓 ...

  10. git push github SSL报错处理

    本文仅供学习交流使用,如侵立删!demo下载见文末 git push github SSL报错 问题:OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connect ...

最新文章

  1. R语言dplyr包获取dataframe分组聚合汇总统计值实战(group_by() and summarize() ):均值、中位数、分位数、IQR、MAD、count、unique
  2. solidworks api二次开发实例详解_Solidworks开发语言对比及分析
  3. c mysql 延时_Mysql 优化之延迟索引和分页优化
  4. 使用Java程序输出1~100之间 7的倍数的个数及总和,并打印输出
  5. php sql文件太大导致无法上传,sql文件太大无法导入phpmyadmin
  6. 5个令人震惊的统计数据证明日志不足
  7. bash log传到日志服务器
  8. (已拿offer)2017腾讯暑期实习生从笔试到面试总结(附带华为、阿里面试经历)...
  9. ATC52 学习记录
  10. 鸿蒙系统反应很快吗,EMUI11对比未成形的鸿蒙系统反应速度:速度差距较大,但细节赢了...
  11. 1133_SICP开发环境搭建
  12. 20172307 / 20172311 结对编程项目-四则运算 第三周总结
  13. 《提问的智慧》 - 懒人的脑图
  14. 易语言dd驱动模拟按键模块_DD虚拟键盘虚拟鼠标
  15. java 设置图片像素_java设置图片像素
  16. Linux命令之重启命令
  17. 可以在线编译运行代码的网站(支持Python)
  18. ABC247ABCD
  19. ASCII,UTF,GBK 是什么
  20. 魔兽世界怀旧服上线,你是曾经500万中的一员吗?

热门文章

  1. 白话Elasticsearch47-深入聚合数据分析之Cardinality Aggs-cardinality算法之优化内存开销以及HLL算法
  2. python 合并两个排序的链表(递归解法)
  3. cd返回上一 git_git统计代码量脚本
  4. halcon知识:共生矩阵
  5. linux lz4 lzo,Linux六大压缩算法横评:Ubuntu 19.10最终选择LZ4
  6. matlab把图片转为base64
  7. 【vue】ios中从详情页中返回到列表页出现空白的问题
  8. 攻防世界php2_攻防世界-web2
  9. JAVA数组扁平化整合_数组扁平化的几种处理放法
  10. php 递归实现无限极分类和排序_PHP无限级分类实现层级值间用字符串拼接