学习资料地址 王爵的技术小黑屋 https://www.youtube.com/watch?v=29q6zwRGywk

01.什么是Git

Git是一个分布式的版本管理系统
每次修改后必须commit
本地数据库

02.萌新也看的懂的 Git 基本操作

  • 安装git : brew install git
    升级 upgrade
  • 配置全局变量 (用户名): git config --global user.name "jcgit"
    重新配置 : git config --global --replace-all user.name "JcOpenSource"
    (邮箱): git config --global user.email "806959893@qq.com"
  • 查看配置文件:cat ~/.gitconfig
    [alias] 操作命令的别名
    [http]
    [https] proxy = http://127.0.0.1:1087 代理
  • 建立目录: mkdir
  • 初始化一个空的仓库 git init
    master 分支
  • 创建文件 touch README.md
  • 显示仓库的状态: git status
  • 添加文件到暂存区管理:git add README.md
  • 移文件从暂存区管理除掉:git rm --cached README.md
  • 将当前文件目录下的所有文件都放到版本控制中:git add -A

暂存区

  • 查看隐藏文件:ll -la
  • cd .git
  • ll
  • 提交文件到服务器:git commit -m "add readme.md"

提交到远程github上
git remote add origin https://github.com/JcOpenSource/git.git
git push -u origin master
*与远端的服务器先建立连接: git remote add origin https://github.com/JcOpenSource/git.git
origin 远端服务器的名字

  • 查看远程连接:git remote -v
  • 将本地的文件提交到服务器上:git push -u origin master
    -u 以后直接输入 git push 不用加远端的连接和分支名字
  • ssh免密校验【没有讲解】

  • 将远程代码克隆到本地:git clone https://github.com/JcOpenSource/git.git git_demo
    后面加新的文件名称

  • 将远程的代码拉到本地:git pull
    git pull origin(远端的链接) master(分之的名字)

03.Git 中的分支

branch 分支
HRAD 当前在使用的分支中的最后一次更新

  • 创建分支:git branch feature1

  • 查看分支:git branch
    按q退出

  • 跳转分支名:git checkout 'feature1'

  • 可以在feature1下开分支feature2,feature2有feature1添加的文件
  • git checkout -b feature3 等价于 git branch feature3 以及 git checkout feature2

  • 删除分支:git branch -d feature2
    在命令行中大写表示非常慎重的操作
    feature3 提交了内容但是没有合并到master 主分支上所以删除分支feature3 会出现错误

  • 将分支feature3里面的东西合并到分支master上
    Fast-forward 模式
    将master 的head 指向 feature3的head 做一个相互合并
  • 冲突解决【没有讲】

远程的分支只有一个

  • 将分支提交到远程

    注意origin 是远端的连接

  • 在本地删除远端的分支 删除:
  • 创建远程分支并且重新命名成f1:git push origin feature1:f1

04 Git 中的合并

  • 查看日志: git log
    git log --oneline
    git log --oneline -3
    日志地址:https://stackoverflow.com/questions/1057564/pretty-git-branch-graphs
  • 配置文件:git log --all --decorate --oneline --graph


    跳转到master分支下查看


    但是我们不知道fb是哪个分支提交的

    默认保存

    --no-ff
    查看新的分支结构提交结果

    把master 和 f1 分支提交到远程

    在远程修改后f1必须merge master 才能与远程同步

在master 做修改


将f1移动到master最后一次提交,然后把master 的所有提交并入过来: git rebase master

绝对不要在公共的分支上使用 git rebase

解决冲突:

使用冲突解决工具



05 Git中的回滚撤销

回到当前版本:git reset master^

^代表上一次、前一次
回退两次可以加两个这个符号^
一次类推
git reset master~5 往后倒退5步

绝对撤回

git reset 回到某一个版本

06 gitignore 和 fork 同步

代码中的.setting .ide 等配置文件如何忽略

  • 创建.gitignore 文件
  • 编写文件:
    【1】忽略系统生成的文件,如IDE的配置
    【2】忽略编译生成的中间文件、可执行文件等
    【3】忽略敏感的配置文件和本地不想提交的脚本
*.sh
.settings/
!*.txt/a/*.class

!*.txt 所有的txt文件不被忽略

自动生成忽略文件:https://www.gitignore.io/

lijuncheng@lijunchengdeMBP ~/workspace/git (master*) $ git add -A .
lijuncheng@lijunchengdeMBP ~/workspace/git (master*) $ git commit -m "add gitignore"
[master 2c89780] add gitignore4 files changed, 17 insertions(+), 6 deletions(-)create mode 100644 .gitignorerename m1.txt => Hello.java (100%)create mode 100644 a.txt.orig
lijuncheng@lijunchengdeMBP ~/workspace/git (master) $ git push
Enumerating objects: 17, done.
Counting objects: 100% (17/17), done.
Delta compression using up to 4 threads
Compressing objects: 100% (14/14), done.
Writing objects: 100% (15/15), 1.50 KiB | 1.50 MiB/s, done.
Total 15 (delta 8), reused 0 (delta 0)
remote: Resolving deltas: 100% (8/8), completed with 2 local objects.
To https://github.com/JcOpenSource/git.gitc7e0996..2c89780  master -> master
lijuncheng@lijunchengdeMBP ~/workspace/git (master) $
  • git fetch 将上游仓库拉下来

07 实现 Github 免密推送

ssh免密提交
gitn 中有4个协议:

  • 本地协议
  • HTTP协议
  • ssh协议
    *git协议

生成ssh公钥:
https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

密码不用输入为了方便

  • 后台开启ssh代理:eval "$(ssh-agent -s)"

自己下载上传项目失败!!!

08 Git 中的工作流

https://github.com/xirong/my-git/blob/master/git-workflow-tutorial.md#23-gitflow

gitflow 大型项目

#09 Git 常用图形化工具

三大工具:

  • sourcetree
  • vscode
  • ide

视频中的 git emoji 插件地址:https://plugins.jetbrains.com/plugin/...

  1. Git Community Book 中文版:http://gitbook.liuhui998.com/
  2. Git Tutorial:http://www.vogella.com/tutorials/Git/...
  3. 猴子都能懂的 Git 指南:https://backlog.com/git-tutorial/cn/
  4. Git 简明指南:http://rogerdudler.github.io/git-guid...

自己提交的git 文档过 Cher 呢

lijuncheng@lijunchengdeMBP ~/Desktop/python-data-visualization (master*) $ git init
Reinitialized existing Git repository in /Users/lijuncheng/Desktop/python-data-visualization/.git/
lijuncheng@lijunchengdeMBP ~/Desktop/python-data-visualization (master*) $ git add -A移除多余的 remote
lijuncheng@lijunchengdeMBP ~/Desktop/python-data-visualization (master*) $ git remote add origin https://github.com/JcOpenSource/python-data-visualization.git
fatal: remote origin already exists.
lijuncheng@lijunchengdeMBP ~/Desktop/python-data-visualization (master*) $ git remote -v
origin  https://github.com/JcOpenSource/python-.git (fetch)
origin  https://github.com/JcOpenSource/python-.git (push)
lijuncheng@lijunchengdeMBP ~/Desktop/python-data-visualization (master*) $ git remote remove originlijuncheng@lijunchengdeMBP ~/Desktop/python-data-visualization (master*) $ git remote add origin https://github.com/JcOpenSource/python-data-visualization.git
lijuncheng@lijunchengdeMBP ~/Desktop/python-data-visualization (master*) $ git remote -v
origin  https://github.com/JcOpenSource/python-data-visualization.git (fetch)
origin  https://github.com/JcOpenSource/python-data-visualization.git (push)lijuncheng@lijunchengdeMBP ~/Desktop/python-data-visualization (master*) $ git commit -m "add python file"
[master (root-commit) 7c13cce] add python file11 files changed, 250 insertions(+)create mode 100644 1.pycreate mode 100644 10.pycreate mode 100644 2.pycreate mode 100644 3.pycreate mode 100644 4.pycreate mode 100644 5.pycreate mode 100644 6.pycreate mode 100644 7.pycreate mode 100644 8.pycreate mode 100644 9.pycreate mode 100644 README.md
lijuncheng@lijunchengdeMBP ~/Desktop/python-data-visualization (master) $ git push -u origin master
Enumerating objects: 13, done.
Counting objects: 100% (13/13), done.
Delta compression using up to 4 threads
Compressing objects: 100% (12/12), done.
Writing objects: 100% (13/13), 4.36 KiB | 4.36 MiB/s, done.
Total 13 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), done.
To https://github.com/JcOpenSource/python-data-visualization.git* [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.
  • 初始化 git init
  • 添加本地 git add
  • 提交本地管理 git commit -m "
  • 获得链接 git remote add origin https://github.com/JcOpenSource/p
  • 提交云端 git push -u origin master

转载于:https://www.cnblogs.com/JCcodeblgos/p/10105922.html

git 学习指南 学习资料笔记相关推荐

  1. [小猫学NA]CCNA学习指南第二章笔记

    TCP/IP模型(DoD模型)是由美国国防部(DOD提出的)想对于OSI7层模型,它只有4层<?xml:namespace prefix = o ns = "urn:schemas-m ...

  2. 《Shell脚本学习指南》读书笔记

    P30-31 软件工具的原则 1.一次做好一件事 2.处理文本行,不要处理二进制数据 3.使用正则表达式 4.默认使用标准输入/输出 5.避免喋喋不休 6.输出格式必须与可接受的输入格式一致 7.让工 ...

  3. 2019年python课本_2019年Python学习指南

    Python是一种用LISP和Java编译的语言,JPthon提供了访问Java图像用户界面的途径,可以让他使用可移植的GUI演示和可移植的http/ftp/html库,因此非常适合作为人工智能语言. ...

  4. Git和Github介绍,294页『Git与Github学习使用指南』分享

    1 前言 相信大家写代码的时候,心里肯定想找一个别人写好的,可以直接上手的代码,再做相应的修改和改进.那哪里有这些代码呢? 答案自然是Github了,那GitHub又是啥? GitHub是世界上最大的 ...

  5. PCL(Point Cloud Library)学习指南资料推荐(2021版)

    PCL(Point Cloud Library)学习指南&资料推荐(2021版) 版权 双愚 https://zhuanlan.zhihu.com/p/268524083?utm_source ...

  6. Git 经验总结及 Git GitHub 学习指南

    1. 前言 本文主要分为两部分,前一部分是本人学习和工作中使用 Git 的总结经验,后半部分是总结的 Git & GitHub 的学习指南.如果想直接体系学习,可以直接按照指南路线学习.如果你 ...

  7. git学习指南_几十张动图告诉你 Git到底是怎么玩的

    点击上方"Java学习指南 "关注我 , 加个"星标",每天阅读Java干货文章 来源:机器之心git merge.git rebase.git reset.g ...

  8. JavaScript 权威指南-学习笔记(一)

    本文所有教程及源码.软件仅为技术研究.不涉及计算机信息系统功能的删除.修改.增加.干扰,更不会影响计算机信息系统的正常运行.不得将代码用于非法用途,如侵立删! JavaScript 权威指南-学习笔记 ...

  9. Hadoop权威指南学习笔记三

    HDFS简单介绍 声明:本文是本人基于Hadoop权威指南学习的一些个人理解和笔记,仅供学习參考.有什么不到之处还望指出,一起学习一起进步. 转载请注明:http://blog.csdn.net/my ...

  10. Hadoop权威指南学习笔记一

    Hadoop简单介绍 声明:本文是本人基于Hadoop权威指南学习的一些个人理解和笔记,仅供学习參考,有什么不到之处还望指出.一起学习一起进步. 转载请注明:http://blog.csdn.net/ ...

最新文章

  1. Xshell连接Ubuntu报错 “服务器发送了一个意外的数据包”
  2. 基于visual graph开发实时线损管理系统
  3. ECMAScript 5 新增 Object 接口
  4. fastreport 横向分栏_FastReport开发指南
  5. 丰田要建专属自动驾驶测试场,再也不用共享了
  6. Solr中的数据导入
  7. pytorch def __init__(self, num_classes, bkg_label, top_k, conf_thresh, nms_thresh):
  8. 2017数学建模B题摘要
  9. 一打卡作弊软件CEO被判5年6个月,网友:这也太...
  10. imagenet标签
  11. windows多线程编程1
  12. 计算机网络-哈尔滨工业大学mooc-第2周作业解答
  13. 【软考】信息安全工程师教程 第五章 物理与环境安全技术
  14. asp.net保存图片
  15. 几何学的公理化:塔尔斯基 pk 希尔伯特,谁能取胜?
  16. python中doc转docx
  17. 你总问,全面发展还是术业专攻?这就是答案
  18. Echarts中国地图背景颜色渐变
  19. TP4054/TP4056/TP4057锂电充电芯片之灯不灭处理方法
  20. 【观影笔记】地平线:大数据时代(BBC)

热门文章

  1. 华为员工待遇全面揭秘
  2. 谷歌浏览器设置免跨域 Mac
  3. 图片的单点触摸移动与多点触摸移动缩放
  4. ubuntu_linux命令TX2学习总结
  5. Windows系统睡眠和休眠的区别
  6. Android Studio导致的假死机问题的解决
  7. 《大学英语翻译》课程相关复习笔记
  8. 光谱分辨率单位_【ENVI入门系列】16.基本光谱分析
  9. h5分享到新浪微博 php,h5分享图文链接到微博如何实现
  10. 计算机里被删除的文件可以在哪里进行恢复,电脑怎么找回删除的文件?找回删除文件的方法...