Git | git基础知识
2019-10-07 本文已影响0人
Ricsy

一、Git基础知识
Git是一个开源的分布式版本控制系统
传统场景:出现内容覆盖

Git:更新历史会保存在git上,所以不需要备份文件
1.1 Git 安装
平台 | 下载地址 | 描述 |
---|---|---|
git推荐
|
https://git-scm.com/download/win | 命令行 |
tortoisegit |
https://tortoisegit.org/download/![]() |
客户端 |
tortoisegit依赖于解释器git
- 安装时,可以直接一路next到结束
git管理 | 常用命令 |
---|---|
查看版本 | git --version |
升级 | git update-git-for-windows |
1.1.1 Q&&A
1. TortoiseGit 显示文件状态图标
2. git相关的用户信息
(1) git push
时填写的用户名和密码记录在控制面板-用户帐户-凭据管理器-Windows凭据
(2) 更换某个远程仓库的用户需要先删除对应凭据后重新填写用户信息
eg:

1.2 Git 组成
组成 | 描述 |
---|---|
本地仓库 | 为了方便用户个人使用,在自己机器上配置的仓库 |
远程仓库 | 配有专用的服务器,为了多人分享而建立的仓库 1. 一般会提供仓库地址,用于克隆(下载) eg(开源示例): github——国外 gitee 码云——国内 coding——国外 ... |

1.2.1 拉取 Pull
git pull

1.2.2 推送 Push
git push

1.2.3 分支 branch
git branch
将修改记录的整体流程分叉保存,分叉后的分支不受其他分支的影响
同一个仓库可以同时进行多个修改

为了不受其他开发人员的影响,可以在主分支master上建立自己的分支,完成工作后,将自己分支上的修改合并到主分支。由于每一次提交的历史记录都会被保存,所以当发生问题时,定位和修改造成问题的提交就容易的多了。

分支管理 | 说明 |
---|---|
创建 | |
创建本地分支 |
git checkout -b <branch-name> 或 git branch <branch-name> git checkout <branch-name> eg: git checkout -b dev
|
创建并关联远程分支 |
git checkout -b <本地分支名> git push --set-upstream origin <远程分支名x> eg: git checkout -b dev git push --set-upstream origin dev
|
拉取远程分支并创建本地分支 | git branch -r |
删除 | |
删除本地分支 | git branch -d <branch-name> |
强制删除本地分支 | git branch -D <branch-name> |
删除远程分支 | git push origin --delete <branch-name> |
切换 | |
切换分支 | git checkout <branch-name> |
切换到主分支 | git checkout master |
合并 | |
合并分支到当前分支 |
git merge <branch-name> eg: 选择分别克隆两个分支的代码后,在local仓库中去合并,为的是合并分支过程中,一旦冲突,方便解决 git clone <url> git checkout -b dev origin/dev git checkout master git merge dev 解决冲突后 git push
|
查看 | |
查看本地分支 | git branch |
查看远程分支 | git branch -a |
- 清除所有更改
git checkout . && git clean -xdf
- 清除某一个文件的更改
git checkout --<文件名>
参阅:
1.3 Git 结构
1.4 场景演示
业务场景 | 描述 |
---|---|
获取项目源代码 |
git clone <url> 或 git clone <url> <dir> eg: git clone <url> . 克隆项目中的文件到当前目录中 |
代码提交到本地仓库 |
git add * git commit -m "日志信息"
|
代码推送到远程仓库 | git push |
获取 | git pull |
1.4.1 解决冲突
第一种方式
git pull
git add *
git commit -m "Update"
git push
提示:
git pull
后修改冲突文件
第一种方式:直接用文本编辑器修改源文件
第二种方式:使用tortoisegit修改功能![]()
1.4.2 回归
更新中......