Git学习笔记

2018/12/28 Git

TIPS

Git学习笔记

# 配置Git

# print working directory  打印工作目录
pwd
# 查看git配置文件
git config --list
# 设置用户名
git config --global user.name  ""
# 设置用户邮箱
git config --global user.email  ""
1
2
3
4
5
6
7
8

# 常用命令

# 删除所有文件包括文件夹
rm -rf xxx
# 不会删除文件夹
rm xxx
# 创建目录
mkdir 文件夹名字
# 进入文件夹
cd change directory
# 显示当前目录下的文件
ls
# 显示所有文件, 包括隐藏文件
ls -al
# 创建文件
touch 文件名
# 查看文件内容
cat 文件名

# 编辑文件
vi 文件名
# i: 插入模式
# esc: 退出编辑模式
# :q! 强制退出
# :wq 保存并退出
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

# Git操作

  1. 初始化git

    # 告诉那个文件夹被git管理, 出现 master
    # 一个项目初始化一次, 不能嵌套
    git init
    
    1
    2
    3
  2. 提交

    # 查看git状态
    git status
    # 把所有文件提交到暂存区, 或者加文件名提交特定的文件
    git add . 或者 -A
    # 删除暂存区
    git rm --cached  文件名
    # 暂存区提交到历史版本库
    git commit -m "消息"
    # 比较(默认工作区和暂存区比较)
    git diff
    # 工作区和历史区比较, master为分支名称
    git diff  master
    # 暂存区和历史区比较
    git diff  --cached
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
  3. 撤销

    # 从暂存区中将工作区内容覆盖掉
    git checkout 文件名
    # 回到上一次git add操作得到的内容
    git reset HEAD 文件名
    # 直接从工作区提交到历史区(前提是已经提交过一次)
    git commit -a -m "消息"
    # 查看版本提交日志, 当前所在版本之前的日志
    git log
    # 查看所有日志, 无论所在什么版本
    git reflog
    # 历史区版本的穿越, 回滚历史区版本
    git reset --hard 版本号
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
  4. 分支

    # 必须提交过一次才会有分支
    # 查看分支
    git branch
    # 创建分支
    git branch 分支名
    # 切换到某个分支
    git checkout 分支名
    # 删除分支  删除是不能在这条分支
    git branch -D 分支名
    # 创建并切换到分支
    git checkout -b 分支名
    
    # 文件修改时切换分支
    # 暂存文件
    git stash
    # 分支有更改时不能切换分支, 要么暂存要么提交, 但是这个是使用暂存区直接覆盖工作区, 再次切换回来就没了
    # 还原暂存的内容
    git stash pop
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
  5. 合并

    # 合并分支
    git merge 分支名
    # 如果有冲突时, 只能手动解决, 留下想要的结果, 并再次提交
    # 输入文件内容, 如果没有文件, 则自动创建并输入
    echo "内容" >> 文件名
    
    1
    2
    3
    4
    5
  6. 提交到github

    • 本地提交: READEME.md
    • 创建一个 .gitignore 忽略提交的文件

    不会上传空文件夹(可以在空文件夹里添加 .gitkeep 文件保持)

    关联远程仓库
    git remote add origin(地址别名, 任意) https://github.com/fengchunqi/xxx.git
    查看关联
    git remote -v
    删除关联
    git remote rm 名字(origin)
    推送代码
    git push origin master
    拉取代码
    git pull origin master
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
  7. 发布

    gh-pages, 分支来发布我们的静态效果图

    • 在项目中创建一个gh-pages的分支

    • 将分支提供到线上仓库

    • 找到提供给你的网址 setting github-pages

      git checkout -b gh-pages
      touch index.html
      git add .
      git commit -m ''
      git push origin gh-pages
      
      1
      2
      3
      4
      5
  8. 其他

    • issue 提交对项目的问题
    • 更改别人的代码: 先fork别人的代码, 本地更改, 然后向对方发送request请求
    • 拉取代码: git clone -b 分支名 地址 新名字 克隆代码到本地
最近更新: 2023年03月21日 14:47:21