• Git使用


    Git简介

      Git是一个开源的分布式版本控制系统,用于高效的处理任何或小或大的项目。

      Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

      Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

    Git安装

     windos下安装

    https://git-scm.com/

    Linux下安装

    yum install git

    Git配置

    1. 配置个人的用户名和电子邮件

    git config  --global user.name  dream
    git config  --global user.email  158148313@qq.com

    如果用了 --global 选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息。

    如果要在某个特定的项目中使用其他名字或者电邮,只要去掉 --global 选项重新配置即可,新的设定保存在当前项目的 .git/config 文件里。

    2.  创建版本库

    cd F:
    mkdir testgit  # 创建仓库
    git init   # 初始化仓库
    •  不要将仓库建在中文目录下,否则可能出现问题。
    • .git是一个隐藏目录,不要随便乱碰(每一次的操作,都会有记录)

    本地仓库操作

    提交操作

    工作区:开发者的工作目录

    暂存区:修改已被记录,但未录入版本库的区域

    版本库:存放变化日志以及版本信息

    git status  # 查看文件的状态,红色是表示未被添加,绿色表示等待提交到本地仓库
    git add  a.py   # 表示提交代码到版本库,或者暂存区,.代表所有
    git commit -m '注释信息' a.py # 把文件提交到本地仓库,后面不跟文件名则为全部提交

    其它操作

    git commit -a  #提交暂存区选中的文件,只需要将需要提交的文件前面的#号去掉,在最上面可以写注释。
    git rm --cached a.py  # 从暂存区移回工作区
    
    git rm -f a.py        # 从暂存区直接删除文件工作区同时也删除

    远程仓库

    我们上面已经能在本地仓库里管理代码了,但是如果团队开发,怎么配合起来?

      我们可以把版本放在互联网上,开发者把自己的最新版本推到线上仓库,同时,把最新版本的代码拉到本地。这样就可以协同工作了。

    注册在线仓库账号

    国外:http:/www.github.com

    国内:http://git.oschina.net

    提交代码到远程服务器

    git remote add test https://gitee.com/ChengJunHua/test.git  # 给远程仓库地址取个别名。
    
    git push test  # push到远程仓库,如果要提交到某分支需要在后面添加分支名字如:git push test dev
    
    git pull abc master   # 从远程仓库,某个分支上拉下来 

     注意:如果出现没有权限之类的报错

    生成公钥

    Portal

    添加公钥

     

    查看改动日志

    git log # 查看项目日志
    git log file # 查看某个文件日志
    git log. # 查看本目录日志
    git reflog # 查看详细做了什么
    
    git log --pretty==oneline # 一行行显示

    版本切换

    方式一(不太灵活,建议使用方式二)

    git reset --hard "head^"  # ^代表回退第几个版本,几个^就回退几个

    方式二

    git reset --hard b23c1  # 前面使用的是版本id前五位

    分支管理

    开发时,代码不是提交到master分支上的,每个人都会有自己的分支;master是把所有人提交的代码合并到一起上线用的分支

    git branch  # 查看分支
    git branch dev # 创建分支
    git checkout dev # 切换分支
    git merge dev # 合并分支

     合并分支时需注意,一定要pull下,防止有人提交了代码。

    远程服务器配置

    git remote # 查看远程仓库
    git remote -v  # 查看远程仓库详情
    git remote remove txt(或者远程地址)  # 删除远程仓库
    git remote rename 旧名称 新名称 # 修改远程仓库名字

    解决无法pull代码

    在git pull的时候,如果本地代码有改动,而服务器上代码也已经被其他人更新过,这个时候是无法成功pull的,可以通过以下四个步骤解决。

    1. 暂存本地修改
    git stash  # 将本地所有修改暂时存储起来
    git stash list   # 查看保存信息
    
    2.pull代码
    git pull -rebase  # 暂存本地修改之后使用pull 
    git pull ........
    
    3. 还原暂存内容
    git stash pop stash@{0}         # 还原暂存内容
    如果只有一次 git stash操作,在还原的本地修改时,直接使用 git stash pop 即可
    
    4.解决文件中的冲突部分 
        如果有文件冲突,冲突地方git会自动指明具体冲突代码,自行修改即可
  • 相关阅读:
    spring AOP
    ElasticSearch RestHighLevelClient 通用操作
    JDK动态代理为什么必须针对接口
    Spring 中的统一异常处理
    ThreadPoolExecutor线程池解析与BlockingQueue的三种实现
    LinkedList源码解析(JDK8)
    MySQL表的四种分区类型
    Reids原理之IO模型
    缓存穿透和缓存雪崩问题
    uwsgi中processes和thread参数的影响大小
  • 原文地址:https://www.cnblogs.com/Dream-huang/p/10486622.html
Copyright © 2020-2023  润新知