git学习日记
git的目标
版本控制 版本迭代 管理多个人开发的项目基础
常见版本控制工具
git,svn,cvs,vss,tfs,visual studio online
版本控制分类
本地版本控制
记录每次文件的更新,可以记录自己的每一个版本或者是补丁文件,适合自己使用
集中版本控制
所有的版本数据都保存在服务器,只能从服务器上搬代码,需要联网 (缺点:服务器一崩就完蛋)代表:svn,cvs,vss
分布式版本控制
可以说是本地加上集中版本控制的结合,相当于每个人都有全部的代码,代表:git
基本的linux命令
cd 目录名:改变目录 cd …:回退到上一个目录,直接cd进入最初始的目录(c://users/用户名) pwd:显示当前路径 clear:清屏 ls: 列出当前目录的所有文件 touch 文件名:创建一个文件,文件名需要写完整名字以及后缀 rm 文件名:删除一个文件,文件名需要写完整名字以及后缀 mkdir 文件夹名字:新建一个目录,实际上就是新建一个文件名 rm -r 文件夹名字:删除一个文件夹(目录) mv 需要被移动的文件 最终移动到的文件地址:移动操作
git环境配置
git config -l
查看系统config
git config --system --list C:\Users\用户名:可以查看当前用户的配置
查看当前用户(global)配置
git config --global --list
设置用户名和邮箱
git config --global user.anme 名字 git config --global user.email 邮箱
git基本理论
git工作区域
工作目录,暂存区,资源库(仓库区,远程仓库(gitee,github等))
工作流程
本地传代码到云端
工作目录->git add files->暂存区->git commit->仓库区->git push->远程仓库
云端传代码到本地
远程仓库->git pull->仓库区->git reset->暂存区->git checkout->工作目录
- 在工作目录添加,修改文件
- 将需要进行版本管理的文件放入暂存区域 git add .(点表示把全部文件git到暂存区)
- 将暂存区域的文件提交到git仓库 git commit
git项目搭建
git init:初始化项目 git clone 文件的url地址:用于从远程仓库拉取项目
git文件操作
git status 查看文件的状态 git commit -m “文件内容” 提交暂存区的文件到本地仓库 注意:在前端中,npm-models文件是不需要打包进去远程仓库的,因为这是自身的配置文件 注意:在后端中,.idea文件是不需要打包进去远程仓库的
忽略文件
有时候我们不能将自身的配置问价放进去版本控制中,我们可以在.gitgnore文件中去对整个工程文件中不需要在使用git命令上传时一同上传的文件
- *.txt 忽略所有以txt结尾的文件
- !xx.txt xx.txt文件除外
- /temp 忽略除了temp目录下的所有文件(用的少)
- temp/ 忽略temp目录下的所有文件(用的多)
- doc/*.txt 忽略这单个文件
配置ssh公钥
- 查找ssh文件
.ssh文件一般在c盘自己用户名文件夹下,如果查找发现没有.ssh文件夹,便可以去git bash中进行创建 创建指令为: ssh-keygen -t rsa -C “你自己的邮箱地址” - 配置ssh公钥
可以在.ssh文件下,通过ssh-keygen -t rsa指令进行公钥的生成,一直enter到底(-t rsa指的是使用rsa的加密算法) - 在.ssh文件下将生成好的公钥(带有pub后缀的为公钥),复制密文到ssh公钥中,便完成了公钥的添加。
git中的分支
常用的分支命令
git branch 查看本地分支 git branch -r 查看远程分支 git branch xxx 新建一个名字叫做xxx的分支 git branch -b xxx 新建一个分支 并切换到此分支 git merge xxx 将xxx分支合并到当前的分支,如果同一个文件合并分支时都被修改了则会引起冲突:解决的办法是我们可以修改冲突文件后重新提交 git branch -d xxx 删除xxx分支
主分支应当非常稳定,在协同进行开发时,我们应该新建一个次分支,在次分支上进行分支修改,协同修改后的稳定版本再git到主分支上
|