Git | 青训营笔记

107 阅读2分钟

这是我参与「第三届青训营 -后端场」笔记创作活动的第四篇笔记

Git 是什么

Git是目前世界上最先进的分布式版本控制系统。

工作原理/流程:

Workspace:工作区 包含.git文件夹的目录就是工作目录,主要用于存放开发的代码
Index/Stage:暂存区 临时保存修改文件的地方
Repository:仓库区(或本地仓库)
Remote:远程仓库

基本命令

  • 配置
git config
git remote
  • 提交代码
git add
git commit
  • 远端同步
# 拉取代码
clone
pull
fetch
# 推送代码
push

初始化

mkdir study
cd study
git init #生成.git文件
--initial-branch # 初始化分支
--bare # 创建裸仓库
--template # 模版创建预先构建的git目录

Git目录

image.png

用户名配置

git config –global user.name ‘账号名’
git config –global user.email 邮箱

Instead of配置

git config –global url.git@github.com:.insteadOf https:..github.com/

Git命令别名配置

git config –global alias.cin "commit -1amend--no-edit

查看remote

git remote -v

添加remote

git remote add origin_ssh git@github.com:git/git.git
git remote add origin_http https://github.com:git/git.git

免密配置 SSH可以通过公私钥的机制,将生成公钥放在服务器端,从而实现免密访问

git commit 将暂存区的文件修改提交到本地仓库

从远程仓库中抓取与拉取
git fetch 是从远程仓库获取最新版本到本地仓库,不会自动merge
git pull 是从远程仓库获取最新版本并merge到本地仓库 将本地分支与远程分支关联:

git branch --set-upstream-to origin/master master

推送到远程仓库 当你想分享你的代码时,可以将其推送到远程仓库。 命令形式:git push [remote-name] [branch-name]

Git分支

几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。Git 的master分支并不是一个特殊分支。 它跟其它分支没有区别。 之所以几乎每一个仓库都有 master 分支,是因为git init 命令默认创建它,并且大多数人都懒得去改动它。 在本章节我们会学习到关于分支的相关命令,具体如下:

  • 查看分支
# 列出所有本地分支
git branch
# 列出所有远程分支
git branch -r
# 列出所有本地分支和远程分支
git branch -a
  • 创建分支
git branch name
  • 切换分支
git checkout name
  • 推送至远程仓库分支
  • 合并分支
  • 删除分支
  • 查看分支