GIT \ SVN 版本管理 git + gitHub

时间:2023-03-08 21:30:06
场景1
想删除一个段落,又怕将来想恢复找不回来怎么办?有办法,先把当前文件“另存为……”一个新的Word文件,再接着改,改到一定程度,再“另存为……”一个新文件,
这样一直改下去,最后你的Word文档变成了这样:
GIT \ SVN    版本管理      git + gitHub
场景2
有些部分需要你的财务同事帮助填写,于是你把文件Copy到U盘里给她(也可能通过Email发送一份给她),然后,你继续修改Word文件。一天后,同事再把Word文件传给你,
此时,你必须想想,发给她之后到你收到她的文件期间,你作了哪些改动,得把你的改动和她的部分合并,真困难
理想状态( 版本控制 )
版本
文件名
用户
说明
日期
1
index.txt
张三
删除了'我爱你'
7/12 10:38
2
index.txt
张三
增加了"请嫁给我"
7/12 18:09
3
index.txt
李四
删除了“请嫁给我”
7/13 9:51
4
index.txt
张三
增加了:“拜拜”
7/14 15:17

SVN(了解)
版本控制工具:、
    集中式得版本控制工具  (不安全)
    网络共享
GIT \ SVN    版本管理      git + gitHub
工作流程:
        项目负责人创建好项目服务后
        参与项目人员检出项目(拉取)
        参与项目人员编辑完之后,添加add
        将文件提交到服务器   commit

git
Git是目前世界上最先进的分布式版本控制系统(没有之一)。
Git有什么特点?简单来说就是:高端大气上档次!
git诞生
集中式  vs  分布式
GIT \ SVN    版本管理      git + gitHubGIT \ SVN    版本管理      git + gitHub
和集中式版本控制系统相比,分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,
随便从其他人那里复制一个就可以了。而集中式版本控制系统的*服务器要是出了问题,所有人都没法干活了。
git得工作流程:
        工作区、暂存区、版本库                         gitHub
        工作区 : 工作中编写得代码
        暂存区:
                    暂时存储、帮助我们保存代码
                    作为过滤层
                    避免误操作
                    保护工作区和版本区
                    分支处理
        版本库:管理版本、版本库中得代码操作产生版本
        GIT \ SVN    版本管理      git + gitHubGIT \ SVN    版本管理      git + gitHub
安装git  
001 配置个人信息
git config --global user.name <名字> --------->:配置用户名
 
git config --global user.email <邮箱>--------->:配置邮箱
 
git config --list --------->:查看配置信息
 
git config --global user.name  --------->:查看用户名
 
git config --global user.email --------> :查看邮箱
002 创建仓库
git init    通过git init命令把这个目录变成Git可以管理的仓库
GIT \ SVN    版本管理      git + gitHub
GIT \ SVN    版本管理      git + gitHubGIT \ SVN    版本管理      git + gitHub
003  查看文件得提交状态
git status
GIT \ SVN    版本管理      git + gitHub
004 将文件或文件夹提交到暂存区
git add 文件名称
GIT \ SVN    版本管理      git + gitHub
005 将缓存区的文件提交到版本库
git commit -m "添加注释"
GIT \ SVN    版本管理      git + gitHub
006 查看提交的版本日志
git log
GIT \ SVN    版本管理      git + gitHub
007版本回退
git reset --hard HEAD^         注:回退一步一个^  两步两个^
 
GIT \ SVN    版本管理      git + gitHub
008 查看版本号
git reflog
GIT \ SVN    版本管理      git + gitHub
009 通过版本号做版本回退
git reset --hard 版本号
 
GIT \ SVN    版本管理      git + gitHubGIT \ SVN    版本管理      git + gitHub
010 查看文件最新改动的地方
git diff 文件名         -------------------------->  查看工作区与暂存区的比较
GIT \ SVN    版本管理      git + gitHub
git diff master    ------------------------>  查看工作区与版本库的比较
GIT \ SVN    版本管理      git + gitHub
git diff --cached  ------------------------------>查看暂存区与版本库的比较
GIT \ SVN    版本管理      git + gitHub
011  删除文件
git rm -f 文件名    ----------------->删除暂存区 或 分支上的文件 同时本地工作区也不需要这个文件
GIT \ SVN    版本管理      git + gitHub
git rm --cached 文件名  ------------------>   删除暂存区 或分支上的文件  但是本地工作区的文件保留
GIT \ SVN    版本管理      git + gitHub
012  批量提交( 注:文件夹的提交必须文件夹不能为空 )
git add .        或者是   git  add  --all
GIT \ SVN    版本管理      git + gitHub
013 忽略某个文件
.gitignore  文件的使用
        用命令创建.gitignore文件  在.gitignore里面添加要忽略的文件名称即可
        touch .gitignore
GIT \ SVN    版本管理      git + gitHub
GIT \ SVN    版本管理      git + gitHub

014  本地分支
    查看分支
git branch
GIT \ SVN    版本管理      git + gitHubGIT \ SVN    版本管理      git + gitHub
    创建分支
git branch 分支的名称
GIT \ SVN    版本管理      git + gitHubGIT \ SVN    版本管理      git + gitHubGIT \ SVN    版本管理      git + gitHub
    切换分支
git checkout 
GIT \ SVN    版本管理      git + gitHubGIT \ SVN    版本管理      git + gitHub
    创建并切换
git checkout -b
 
GIT \ SVN    版本管理      git + gitHub
    删除分支
git branch -d 分支名称   在主分支上删除
GIT \ SVN    版本管理      git + gitHub
    分支合并
git merge 分支名称
GIT \ SVN    版本管理      git + gitHub

GitHub
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名GitHub。
001  git操作github   实现项目托管    (  从远端github拉取代码 )
1:需要早github上面创建一个仓库(先创建仓库的时候。github仓库尽量初始化)
2:在本地通过git  clone一个github仓库      命令 : git clone github仓库路径
GIT \ SVN    版本管理      git + gitHub
 
3:把路径切换在.git的目录下     在本地工作区添加项目 ->  存在暂存区 ->  本地git仓库
 
4:将本地仓库推送到远端   git push -v origin master
 
5:线下同步github线上代码  git pull origin master
002  把本地git仓库 推送到远端
0:github里面先创建新的仓库
 
1:git remote add origin github仓库地址    连接
 
GIT \ SVN    版本管理      git + gitHub
2:git push -v origin master      推送
GIT \ SVN    版本管理      git + gitHub

远程分支
0 : git branch --all  查看所有分支
GIT \ SVN    版本管理      git + gitHub
 
1 : git branch -r   查看远程分支
GIT \ SVN    版本管理      git + gitHub
 
2:将本地分支 push 到远程分支
GIT \ SVN    版本管理      git + gitHub
 
3:删除远程分支
GIT \ SVN    版本管理      git + gitHub