zoukankan      html  css  js  c++  java
  • git操作

    版本控制器

    """
    完成 协同开发 项目,帮助程序员整合代码
    
    软件:SVN 、 GIT
    
    git:集群化、多分支
    """
    

    工作流程图

    安装

    """
    1.下载对应版本:https://git-scm.com/download
    2.安装git:在选取安装路径的下一步选取 Use a TrueType font in all console windows 选项
    """
    

    搭建本地git仓库

    将已有的文件夹作为git仓库
    """
    >: cd 目标文件夹内部
    >: git init
    """
    
    在指定目录下创建git仓库
    """
    >: cd 目标目录
    >: git init 仓库名
    """
    

    配置操作git的用户信息

    当前仓库:局部
    """
    >: git config user.name '用户名'
    	-- 用户名
    >: git config user.email '用户邮箱'
    	-- 用户邮箱
    	
    注:在当前仓库下的config新建用户信息,只能在当前仓库下使用
    """
    
    所有仓库:全局
    """
    >: git config --global user.name '用户名'
    >: git config --global user.email '用户邮箱'
    
    注:在全局文件 C:Users用户文件夹.gitconfig新建用户信息,在所有仓库下都可以使用
    """
    

    常用指令

    查看仓库状态
    """
    # 当仓库中有文件增加、删除、修改,都可以在仓库状态中查看
    >: git status  
    	-- 查看仓库状态
    >: git status -s  
    	-- 查看仓库状态的简约显示
    """
    
    工作区操作
    # 通过任何方式完成的文件删与改
    # 空文件夹不会被git记录
    
    撤销工作区操作:改、删
    """
    >: git checkout .
    	-- 撤销所有暂存区的提交
    >: git checkout 文件名
    	-- 撤销某一文件的暂存区提交
    """
    
    工作区内容提交到暂存区
    """
    >: git add .  
    	-- 添加项目中所有文件
    >: git add 文件名  
    	-- 添加指定文件
    """
    
    撤销暂存区提交:add的逆运算
    """
    >: git reset HEAD .
    	-- 撤销所有暂存区的提交
    >: git reset 文件名
    	-- 撤销某一文件的暂存区提交
    """
    
    提交暂存区内容到版本库
    # git commit -m "版本描述信息"
    
    撤销版本库提交:commit的逆运算
    """
    回滚暂存区已经提交到版本库的操作:
        查看历史版本:
            >: git log
            >: git reflog
        查看时间点之前|之后的日志:
            >: git log --after 2018-6-1
            >: git log --before 2018-6-1
            >: git reflog --after 2018-6-1
            >: git reflog --before 2018-6-1
        查看指定开发者日志
            >: git log --author author_name
            >: git reflog --author author_name
        回滚到指定版本:
            回滚到上一个版本:
                >: git reset --hard HEAD^
                >: git reset --hard HEAD~1
            回滚到上三个版本:
                >: git reset --hard HEAD^^^
                >: git reset --hard HEAD~3
            回滚到指定版本号的版本:
                >: git reset --hard 版本号
                >: eg: git reset --hard 35cb292
    """
    

    过滤文件

    # .gitignore 文件
    # 1)在仓库根目录下创建该文件
    # 2)文件与文件夹均可以被过滤
    # 3)文件过滤语法
    
    """ 过滤文件内容
    文件或文件夹名:代表所有目录下的文件或文件夹都被过滤
    /文件或文件夹名:代表仓库根目录下的文件或文件夹被过滤
    """
    

    线上线下协同操作

    源操作

    """
    查看所有源
    >: git remote
    
    查看源信息
    >: git remote -v
    
    添加源
    >: git remote add 源名 源地址
    >: git remote add origin https://gitee.com/doctor_owen/luffy.git
    
    删除源
    >: git remote remove 源名
    >: git remote remove origin
    """
    

    选择线上仓库

    """
    1.注册码云账号并登录:https://gitee.com/
    2.创建仓库(课堂截图)
    3.本地与服务器仓库建立连接
    """
    """
    1)本地配置线上的账号与邮箱
    >: git config --global user.name "doctor_owen"
    >: git config --global user.email "doctor_owen@163.com"
    
    2)在本地初始化仓库(git init),并完成项目的初步搭建(项目架构)(一般都是项目负责人完成项目启动)
    # 这个过程就是git的基础部分的本地操作
    
    3)采用 https协议 或 ssh协议 与远程git仓库通信提交提交代码(一般都是项目负责人完成)
    	i) https协议方式,无需配置,但是每次提交都有验证管理员账号密码
    	>: git remote add origin https://gitee.com/doctor_owen/luffy.git  # 配置远程源
    	>: git push -u origin master  # 提交本地仓库到远程源
    	
    	ii) ssh协议,需要配置,配置完成之后就可以正常提交代码
    	>: git remote add origin git@gitee.com:doctor_owen/luffy.git  # 配置远程源
    	>: git push -u origin master  # 提交本地仓库到远程源
    	
    	iii)查看源及源链接信息
    	>: git remote
    	>: git remote -v
    	
    	iv)删除源链接
    	>: git remote remove 源名字 
    	
    注:origin远程源的源名,可以自定义;master是分支名,是默认的主分支
    """
    
    生成公钥
    """
    1.参考帮助文档:https://gitee.com/help/ 
    	-- 仓库管理 => 公钥管理 => 生成/添加SSH公钥
    	
    >: ssh-keygen -t rsa -C "owen@163.com"
    """
    

    git团队开发:重点

    """
    管理员
    1.管理员配置与线上账号密码系统的本地全局账号密码
    >: git config --global user.name "doctor_owen"
    >: git config --global user.email "doctor_owen@163.com"
    
    2.本地初始化git仓库(可以建立一个项目架构)
    	1)创建项目
    	2)进入项目目录初始化仓库:
    		>: git init
    	3)提交代码到本地版本库
    3.创建一个远程空仓库(码云)
    4.将本地版本库同步到远程仓库
    	1)在本地仓库内添加远程仓库源,源名默认就采用origin,就采用https协议即可
    		>: git remote add origin https://gitee.com/doctor_owen/luffy.git
    	2)将本地版本库提交到远程版本库,需要远程仓库账号密码
    		>: git push -u origin master
    
    开发者
    5.要参与开发的成员配置本地全局账号密码
    >: git config --global user.name "owen"
    >: git config --global user.email "owen@163.com"
    
    6.生成本机的SSH公钥提供给管理员
    >: ssh-keygen -t rsa -C "owen@163.com"
    
    管理员
    7.添加开发者提供的公钥到 个人公钥 并非是 公钥,并给开发者提供远程仓库SSH地址
    	仓库 => 管理 => 添加公钥 => 添加个人公钥
    	SSH地址:git@gitee.com:doctor_owen/luffy.git
    
    开发者
    8.在本机任意合适位置clone远程仓库到本地
    >: git clone git@gitee.com:doctor_owen/luffy.git
    
    9.进入本地项目仓库进行开发,可以查看远程源
    >: cd luffy
    >: git remote -v
    注:origin  git@gitee.com:doctor_owen/luffy.git (fetch) & (push)
    
    10.开发过程中要提交新功能时,一定要遵循先拉取(pull),在提交(push)
    	1)提交新功能(先提交,提交后拉取,可能就会出现冲突)
    		>: git add .
    		>: git commit -m '提交新功能的信息说明'
    	2)拉取远程仓库(不管本地是否已经和远程同步,每一次提交前都必须拉取)
    		>: git pull 源名 分支名 => git pull origin master
    	3)提交到远程仓库(现在是主分支)
    		>:git push 源名 分支名 => git push origin master
    """
    

    多分支开发

    分支操作
    """
    1.创建分支
    >: git branch 分支名
    
    2.查看分支
    >: git branch
    
    3.切换分支
    >: git checkout 分支名
    
    4.创建并切换到分支
    >: git checkout -b 分支名
    
    5.删除分支
    >: git branch -d 分支名
    
    6.查看远程分支
    >: git branch -a
    """
    

    合并分组

  • 相关阅读:
    HDU1879 kruscal 继续畅通工程
    poj1094 拓扑 Sorting It All Out
    (转)搞ACM的你伤不起
    (转)女生应该找一个玩ACM的男生
    poj3259 bellman——ford Wormholes解绝负权问题
    poj2253 最短路 floyd Frogger
    Leetcode 42. Trapping Rain Water
    Leetcode 41. First Missing Positive
    Leetcode 4. Median of Two Sorted Arrays(二分)
    Codeforces:Good Bye 2018(题解)
  • 原文地址:https://www.cnblogs.com/Hades123/p/11755165.html
Copyright © 2011-2022 走看看