Git入门

Git入门(转载)

前言

进公司差不多3个月了,对于git只会add,commit,push,pull,没有具体系统的学习过,趁周末补一下Git的基础好了

本篇内容转载于下面的链接,主要是为了记录,侵删

「一劳永逸」一张脑图带你掌握Git命令

Git经典流程图

基本概念

Git基本命令

常见命令

1. 查看状态

git status

  • Changes not staged for commit

    • 表示得大概就是工作区有该内容,但是缓存区没有,需要我们git add
  • Changes to be committed

    • 一般而言,这个时候,文件放在缓存区了,我们需要git commit
  • nothing to commit, working tree clean

    • 这个时候,我们将本地的代码推送到远端即可

2. 配置命令

Git配置命令

3. 分支管理

Git分支管理

4. fetch指令

Git命令fetch

5. 花式撤销

Git花式撤销

6. 文件暂存

Git命令文件暂存

7. 差异比较

Git文件比较

基本操作

1. 项目新建

  1. git init

  2. git remote add origin [https | ssh]

  3. git config --list

    1. git config --local user.name 'XXXX'
    2. git config --local user.email 'XXXX'
  4. ssh-keygen -t rsa -f ~/.ssh/id_rsa_github -C [邮箱]

    1. cat id_rsa_github.pub

    2. 复制到github的SSH配置中

    3. vim ~/.ssh/config

      1. Host github.com
            Hostname github.com
            User XXXX
            IdentityFile ~/.ssh/id_rsa_github
        
    4. ssh -T git@github.com

  5. git add .

  6. git commit -m 'XXXX'

  7. git push <远程主机名> <本地分支名>:<远程分支名>

2. 项目开发中加入

前提:SSH配置好或者能够使用https链接到远端仓库

  1. git clone [ https | ssh ]

练习

1. 本地创建远端分支

git checkout -b test											# 创建本地分支test
git push origin test											# push test分支到远端
git branch --set-upstream-to=origin/test	# 关联本地test和远端test分支
git branch -a															# 查看分支(本地和远端)

2. git fetch和git pull的区别

详解git pull和git fetch的区别

简单来说:git pull=git fetch+[ git merge | git rebase ]

不要用git pull,用git fetch和git merge代替它。
git pull的问题是它把过程的细节都隐藏了起来,以至于你不用去了解git中各种类型分支的区别和使用方法。
当然,多数时候这是没问题的,但一旦代码有问题,你很难找到出错的地方。看起来git pull的用法会使你
吃惊,简单看一下git的使用文档应该就能说服你。

将下载(fetch)和合并(merge)放到一个命令里的另外一个弊端是,你的本地工作目录在未经确认的情况下
就会被远程分支更新。当然,除非你关闭所有的安全选项,否则git pull在你本地工作目录还不至于造成
不可挽回的损失,但很多时候我们宁愿做的慢一些,也不愿意返工重来。

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×