git

Posted zhouze

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git相关的知识,希望对你有一定的参考价值。

版本控制器:Git

# 达到多人协同开发的目的

安装

"""
1.下载对应版本:https://git-scm.com/download
2.安装git:在选取安装路径的下一步选取 Use a TrueType font in all console windows 选项
        -- 安装成功后桌面右键可以看到git菜单
"""

搭建本地git仓库

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

配置操作git的用户信息

当前仓库:局部
"""
>: git config user.name '用户名'
    -- 用户名
>: git config user.email '用户邮箱'
    -- 用户邮箱
"""
所有仓库:全局
"""
>: git config --global user.name '用户名'
>: git config --global user.email '用户邮箱'
"""

常用指令

查看仓库状态
"""
# 当仓库中有文件增加、删除、修改,都可以在仓库状态中查看
>: 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 vs svn

# 1、git是分布式的,每一个客户端均可以作为服务器为其他客户端提供代码
# 2、git有强大的分支管理机制,可以在子分支上开发,将最终的成果同步到主分支即可

Git线上操作

选择线上仓库

"""
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/luffy1.git  # 配置远程源
    >: git push -u origin master  # 提交本地仓库到远程源
    
    ii) ssh协议,需要配置,配置完成之后就可以正常提交代码
    >: git remote add origin git@gitee.com:doctor_owen/luffy1.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 源名 分支名
    3)提交到远程仓库(现在是主分支)
        >: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
"""

重点:冲突解决、分支合并

以上是关于git的主要内容,如果未能解决你的问题,请参考以下文章

Git 学习路线

从0到1带你掌握git(一分钟掌握git)--git如何下载?git如何使用?git是什么?git怎么获取文件?

Git认识与使用 Git

Git认识与使用 Git

Git认识与使用 Git

Git认识与使用 Git