wordpress 拖拽排序插件,对网站外部的搜索引擎优化,电子商务网站建设与维护致谢词,建设自己网站的流程图文章目录 GitGit的核心流程Git的命令clone指令status指令add指令commit指令push指令pull指令log指令 Git中处理冲突协同合作Git中回退的措施忽略文件 Git
git的特点#xff1a;
分布式 比如说#xff1a;同事A、同事B、同事C都能对远程仓库进行操作#xff0c;就是分布式 … 文章目录 GitGit的核心流程Git的命令clone指令status指令add指令commit指令push指令pull指令log指令 Git中处理冲突协同合作Git中回退的措施忽略文件 Git
git的特点
分布式 比如说同事A、同事B、同事C都能对远程仓库进行操作就是分布式 离线可用 SVN集中式版本控制工具如果网络中断则没办法提交代码Git分布式版本控制工具如果网络中断可以提交代码到本地仓库没办法推进代码 可以回退 Git的核心流程 远程仓库类似于网络上的存储空间可以存储代码 比如github、gitee、gitlab、自己搭建服务器 本地仓库远程仓库在本地的一个路径没办法操作它缓冲区没办法直接操作工作空间可以直接操作 Git的命令
clone指令
只有第一次拉去远程仓库到本地仓库用clone指令之后就用pull指令
# 下载远程仓库的内容并且在本地创建一个和远程仓库名同名的文件夹
eg
git clone https://gitee.com/test.git# 下载到指定的文件夹中。文件夹需要是个空目录
git clone https://gitee.com/test.git dirNamestatus指令
这个命令可以帮助我们查看工作区和缓冲区中的变化
eg
红颜色指工作区中的变化绿颜色指缓冲区中的变化
add指令
这个命令可以帮助我们把工作区中的变化提交到缓冲区add的时候要指定文件名常见提交方式有
# 有以下的三种提交方式# 文件的名字
git add fileName# 文件的类型通配符添加
# 指将所有的java文件添加到缓冲区
git add *.java# 所有文件
git add .eg
commit指令
这个命令可以帮助我们把git仓库中缓冲区中的内容提交到本地仓库不能将指定文件进行commit操作
第一次提交的时候要设置用户名和邮箱
执行指令去设置
git config --global user.email forExamplexx.comgit config --global user.name xxxeg 上图中的738b48f是一个版本号
注意事项
这一步会产生一个文件的版本号如果是第一次commit需要设置用户名和邮件地址只会把缓冲区中的变化提交到本地仓库不会把工作区中的变化提交到本地仓库commit的时候需要指定提交的信息提交的信息一般要去设置模板
commit的格式
# 提交
git commit -m msg
## msg:msg信息一般要有统一的格式 例如描述信息 (issue号)
# 1.描述信息 (issue号)
# 2.(issue号) 描述信息# 尽量做到见到描述信息可以知道这次提交是干什么的。
# 不要写什么 1 abc push指令
push这个命令可以帮助我们把本地仓库中的所有变化推送到远程仓库。不能指定文件进行push操作push指令的第一步一般是pull指令只有当本地仓库中的版本领先于远程仓库的时候才可以进行push操作
eg
pull指令
会拉取远程仓库中的所有的变化到本地并且会显示出版本号当本地仓库中的版本落后于远程仓库的时候就要pull
eg
log指令
查看仓库中的所有的版本信息
eg Git中处理冲突 总结
先push的人不处理冲突后push的人要处理 冲突和组员一起开发的时候尽量不要开发同一个文件很容易产生冲突push之前最好先pull一下不然可能会push失败 早上上班之后第一件事情拉取最新的代码pull晚上下班之前最后一件事情把最新的本地代码推送上去push。代码一定要能编译通过 协同合作
不管是 开源的仓库还是私有的仓库都是 只有仓库中的成员才能去修改仓库中的代码。
开源所有人都可以访问到私有只有仓库指定的成员才能看到 Git中回退的措施 git diff 文件名 可以查看文件发生了哪些变化 git checkout 文件名 将在工作区中文件的变化丢掉 git reset 文件名 把缓冲区中的变化回退到工作区。注意git reset不会改变文件中的内容 git reset --hard 版本号 git reflog 查看之前的版本号 忽略文件
可以在Git仓库的根目录下添加一个.gitignore 这个名字的文件可以在这个文件中声明哪些文件不被git追踪版本信息。一旦一个文件已经被追踪并且提交到远程仓库中去了那么再在.gitignore 这个文件中去忽略它的变化是无效的