zoukankan      html  css  js  c++  java
  • Git学习笔记(三)

    学习网址

    标签管理

    一、创建标签

    创建标签,更容易记住名字,创建和删除标签都是瞬间完成。

    1、创建和查看标签名:

     

    2、给历史某个commit添加标签:

     

    注意tag标签不是时间排序列出,是按字母列出。

     

    3、查看标签信息git show <tagname>:

     

    4、创建带说明的标签,用-a指定标签名,-m指定说明文字:

     

    查看:

     

    5、使用-s用私钥签名一个标签:

    标签采用PGP签名,必须安装gpg(GnuPG)如果没安装会报错:

     

    安装后,可以使用git show <tagname> 可以看到PGP签名信息

    二、 标签操作

    1.标签:

     

    2、推送某个标签到远程 git push origin <tagname>:

    $ git push origin v1.0
    
    Total 0 <delta 0>,reused 0 <delta 0>
    
    To github.com:AngleHeart/gitskills.git
    
    Xinghao [new tag]   v1.0 -> v1.0

    3、一次性推送全部本地标签到远程:$ git push origin –-tags

     

    4、删除远程标签:

    a 删除本地标签: $git tag –d v1.0   b 删除远程标签: $git push origin :refs/tags/v1.0

    自定义Git

    一、忽略特殊文件

    1、定义git显示样式,会适当的显示不同的颜色,做区分:

     

    2、忽略特殊文件规则:

      a.统自动生成的文件。

      b.忽略自动编译生成的中间文件、可执行文件等,就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库。

      c.略自己带有敏感信息的配置文件,如口令的配置文件。

    3、新建一个.gitignore文件(禁止提交的文件,自定义),提交到Git: 

    # Windows:
    Thumbs.db
    ehthumbs.db
    Desktop.ini
    
    # Python
    *.py[cod]
    *.so
    *.egg
    *.egg-info
    dist
    build
    
    # My configurations:
    db.ini
    deploy_key_rsa
    *.idea

    windows创建.gitignore时,会要求必须输入文件名。可使用编辑器创建该文件

    4、有时添加一个文件会失败,这是因为别 .gitignore忽略了:

     

    5、可以用 –f 强制添加到Git:

     

    6、可以使用 git check-ignore 命令查询 .gitignore 的位置:

     

    一、配置别名

    1.简写命令

    git status => git st :

    $ git config –global alias.st status

    $ git config –global alias.co checkout

    $ git config –global alias.ci commit

    $ git config –global alias.br branch

    --global参数是全局参数,修改之后的命令,在当前电脑下所有Git仓库都适用。

    git reset HEAD file => git unstage  把暂存的区域撤销:

    $ git config –blobal alias.unstage “reset HEAD”

    git log -1 => git last   最后一次提交

    $ git config –blobal alias.last “log -1”

    2.git lg:

    3.配置文件

    —global是针对当前用户起作用,不加,只针对当前仓库。

    每个仓库的Git配置文件都在.git/config文件中:

    [core]
       repositoryformatversion = 0
       filemode = false
       bare = false
       logallrefupdates = true
       symlinks = false
       ignorecase = true
    [remote "origin"]
       url = git@github.com:AngleHeart/gitskills.git
       fetch = +refs/heads/*:refs/remotes/origin/*
    [branch "master"]
       remote = origin
       merge = refs/heads/master
    [alias]
       co = checkout
       t = status

    别名就在[alias]后面。

    当前用户Git配置文件在用户主目录下的一个隐藏文件.gitconfig 中:

    [user]
       name = youyou
       email = 595093508@qq.com
    [color]
       ui = true
    [alias]
       st = status
       lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit

    三、搭建Git服务器(个人没有搭建过,只做记录)

    搭建Git服务器需要一台运行Linux的机器,推荐用UbuntuDebian

    有sudo 权限,开始安装:

    第一步,安装git:

    $ sudo apt-get install git

    第二步,创建一个git 用户,运行git服务:

    $ sudo adduser git

    第三步,创建证书登录:

    把公钥 id_rsa.pub 文件,导入 /home/git/.ssh/authorized_keys 文件中,一行一个。

    第四步,初始化Git仓库:

    选择一个目录,假设是 /srv/sample.git,在 /src 目录下输入命令:

    $ sudo git init –bare sample.git

    用户不可以直接在服务器上操作,服务器上Git仓库是为了共享,Git仓库通常以 .git 结尾。把owner改为git:

    $ sudo chown –R git:git sample.git

    第五步,禁用shell登录:

    第二部创建的用户不允许登录shell,通过编辑 /etc/passwd 文件完成,找到类似:

    git:x:1001:1001:,,,:/home/git:/bin/bash

    改为:

    git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

    用户可以通过ssh使用git。

    第六步,远程克隆仓库:

    $ git clone git@server:/srv/sample.git

  • 相关阅读:
    Python数据结构-链表
    面试题4:替换空格
    面试题3:二维数组中的查找
    2019.12.17基佬出的一道题
    2019.12.17霍格沃兹测试学院一道题
    python_ck01(虚拟环境管理)
    api_DZFPKJ & api_DZFPCX(get_AES_url代码优化)
    cwyth(自动核销代码)
    api_DZFPKJ & api_DZFPCX
    字符串返回数组并排序(算法题)
  • 原文地址:https://www.cnblogs.com/zmr2520/p/5972476.html
Copyright © 2011-2022 走看看