Git

1.版本控制

版本控制是一种在开发过程中,用于管理我们对文件、目录或工程等内容的修改历史,方便查看历史记录,备份以便恢复以前版本的软件工程技术。

  • 实现跨区域多人协同开发
  • 追踪和记录一个或多个文件的历史记录
  • 组织和保护源代码和文档
  • 统计工作量
  • 并行开发,提高工作量
  • 记录跟踪整个软件开发过程
    简而言之:管理多人协同开发项目的技术。

2.Git

Git是分布式版本控制,所有的版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有的版本历史。不会因为服务器损坏或者网络问题,造成不能工作的情况。

3.基础命令

cd:切换目录
pwd:查看当前绝对路径
clear:清屏
ls:列出当前目录的文件
touch:创建文件
rm:删除文件
mkdir:创建目录
rm -r:删除目录
mv:移动文件
history:历史命令
exit:退出

4、相关配置

git config --global --list  全局配置
以下两项必须配置,每次提交的时候都会用到以下信息,通过命令配置之后会同步到配置文件C:\Users\用户名\.gitconfig
git config --global user.name "xxx"
git config --global user.email "xxx.com"

5、Git基本理论

Git本地有3个区域,工作区、暂存区、资源库。如果加上远程的的git仓库就可以分为4个工作区域。
workspace 工作区:平时存放项目代码的地方
stage暂存区:用于临时存放你的改动,事实上是一个文件
repository资源库:安区存放数据的位置,这里有你提交到所有版本的数据
remote远程仓库:托管代码的服务器

6、项目搭建

1.本地仓库搭建
git init

2.远程仓库搭建
git clone url

7.git文件操作

untracked:未跟踪,此文件在文件夹中,但并没有加入到git库中,不参与版本控制,通过git add 将状态变为staged
unmodify:文件入库但是未进行修改,如果被修改,则变为modified,如果使用git rm移出版本库,则变为untrancked
modified:文件已修改,并没有进行其他操作,通过git add进入staged,使用git checkout 丢弃修改过,git checkout从库中取出文件会覆盖原文件
staged:暂存状态,git commit将修改同步到库中,文件为unmodified状态;git reset head filename取消暂存,文件状态为modified

git status
git add .
git commit -m 

忽略文件:
.gitignore文件中配置
.txt:忽略.txt文件
!lib.txt:lib.txt文件不会上传
/temp:忽略/temp目录下的内容
build/:忽略build/目录下的所有文件
doc/
.txt:忽略该目录下的.txt文件

8、Git合并

第一种方法: git merge。在 Git 中合并两个分支时会产生一个特殊的提交记录,它有两个父节点。翻译成自然语言相当于:“我要把这两个父节点本身及它们所有的祖先都包含进来。保留原有分支,git merge会产生一条额外的合并记录。merge只需要解决一次冲突。

第二种合并分支的方法是 git rebase。Rebase 实际上就是取出一系列的提交记录,“复制”它们,然后在另外一个地方逐个的放下去。
Rebase 的优势就是可以创造更线性的提交历史,用于把一个分支的修改合并到当前分支上。如果只允许使用 Rebase 的话,代码库的提交历史将会变得异常清晰。rebase需要一次又一次解决冲突。

posted @ 2023-04-18 23:09  清风凉明月亮  阅读(24)  评论(0)    收藏  举报