Git版本控制工具

172 阅读2分钟

什么是Git

 官方解释: 分布式版本管理器
 个人理解: 管理我们项目文件夹的工具
     用该软件来管理文件夹,该文件夹被git管理后,我们对它进行的各种操作,都会被记录在案,可随时复原
     

Git本地库使用

 Git分区
     工作区
     暂存区 add
     历史区 commit
 Git命令
     工作区-->暂存区
         git add     文件/文件夹 文件放入暂存区
         git add .   将当前所有文件放入暂存区
     暂存区-->工作区
         git reset HEAD --   单个文件/文件夹
         git reset HEAD -- . 所有文件/文件夹
     删除暂存区文件
         git rm --cached 文件名
     暂存区-->历史区
         git commit -m '版本说明'
     查看版本
         git log 
             commit 版本编号
             Author 作者
             Date 时间
                 说明
     回退查看原来版本号
         git reflog 
     版本回退:
         git reset --hard 版本号
         git reset --hard HADE^ 回退到上一版本 多个^表示回退到上^个版本
     恢复本地误删文件
         step1:  git status
         step2:  git reset HEAD[被删除文件或文件夹]
         step3:  git checkout [被删除文件或文件夹]
     忽略提交文件
         step1: 在工作区创建 .gitignore 文件 注:文件名为.gitignore
         step2: 在该文件中写入要忽略的文件 /node_modules
     git本地分支: 默认master主分支
         开辟分支 git branch logoin
         查看当前分支情况 git branch
         切换分支 git checkout 
         合并分支 git merge 分支名 只能把别的分支合并到自己分支上
         删除分支 git branch -d 分支名
             
 Git步骤
     - 进入需要被Git管理的目录
     - 初始化Git版本库 git init
     - 初始化用户名和邮箱[首次使用Git才需要]
     - 添加到暂存区 git add xx
     - 添加到历史区 git commit -m '提示信息'
     - 查看历史区日志 git log
     - 版本回退 git reset --hard 版本号  git reset --hard HEAD^ 回退上一版本
     
     
 Git远程库
     码云示例
         Git上传
              第一次添加 remote远程(直接从你的远程库copy)
                 git remote add origin 仓库地址  //建立链接
                 git push -u origin master 
             第二次上传
                 git push 
                 Git冲突:
                    在每次push前 先git pull 获取远程库最新代码
                    
             远程分支
                 git branch -r 查看远程分支
                 git push origin [name] 本地分支push到远程分支
                 git push origin :heads/[name] 删除远程分支
                 git pull [remoteName][localBranchName] 拉取远程仓库
                 git clone -b 远程分支名 -地址
                 
         GIt下载
             git clone -地址
                 
             git pull
             
         可视化工具: tortoisegit
         集中式版本控制工具:svn