Git使用

作者: 佩佩216 | 来源:发表于2018-07-16 10:17 被阅读0次

    1.软件下载

    2.git 命令

    • 1.git init 初始化仓库

    • 2.git status 查看当前状态

    • 3.git add -A(提交所有的) 提交本地文件到缓存区

    • 4.git commit -m"提交信息" 将缓存区的东西提交到本地仓库

    • 5.git reset --hard sha 值 回退到某一个版本

      git reset --hard sha 值 回退到某一个版本
      git reset --mixed(默认可以不写) sha 状回退到修改态
      git reset --soft sha 回退到暂存区状态
      
    • 6.git push 将本地仓库的内容提交到远程服务器

    • 7.git pull 从远程服务器更新

    • 8.git log 查看所有的提交日志

    • 9.git clone 仓库地址

    • 10.git reflog 查看所有的SHA值

    3.分支

      1. git branch fixBranch(分支名称) 开启分支
    • 2.git branch 查看当前分支 有*的代表当前正在工作的分支
    • 3.git checkout fixBranch 切换到fixBranch的分支上
    • 4.git merge fixBranch 分支合并 将 fixBranch上的内容合并到master上
    • 5.git branch -d fixBranch 删除分支

    远程操作

    • 1.git branch test 创建本地分支
    • 2.git push origin test 将本地分支推送到远程分支
    • 3.git branch -r -d origin/branch-name 删除本地分支
    • 4.git push origin --delete test 删除远程分支

    4.git共享仓库

    • 1.git clone 仓库地址
    • 2.git clone --bare 地址
    • 共享仓库看不到工作区
    • 但是里面有内容 他是共享的,别人只能往里面放代码,但是不让修改 如果向获取就直接克隆

    5.代码冲突

    文件冲突: 多个人同时改了同一个文件的同一行就会引起冲突

    6.查看远程仓库地址

    • git remote -v 查看远程仓库地址 默认 origin

    • git remote add 仓库名称 仓库地址

    • 修改远程仓库地址

      • 1.直接修改

        git remote origin set-url [url]
        
      • 2.先删除后增加

        git remote rm origin
        git remote add origin [url]
        
      • 3.直接修改config文件

    7.生成公钥和私钥

    生成 公钥/私钥 ssh-keygen -t rsa

    8.git tag 标签

    • 标签可以针对某一时间点的版本做标记,常用于版本发布
    • git tag v0.1.2
    • 创建附注标签
    • git tag -a v0.1.2 -m “0.1.2版本”
    • 切换到标签
    • 与切换分支命令相同,用git checkout [tagname]
    • 用git show命令可以查看标签的版本信息:
    • git show v0.1.2
    • 给指定的commit打标签
    • git tag -a v0.1.1 9fbc3d0
    • 标签发布
    • 通常的git push不会将标签对象提交到git服务器,我们需要进行显式的操作:
    • git push origin v0.1.2 # 将v0.1.2标签提交到git服务器
    • git push origin –-tags # 将本地所有标签一次性提交到git服务器
    • git tag -d v0.1.2 # 删除本地标签
    • git push :refs/tags/v0.1.2 删除远程tag
    • git tag 查看本地的tag

    9.gitignore 忽略文件

    • 创建 .gitignore文件, 图形化界面不能创建
    • node_modules/ node_modules下的所有文件都不提交
    • node_modules/*.jpg node_modules/123.jpg图片不提交但是node_modules/coderYJ/456.jpg可以提交
    • .idea/* .idea 下的所有文件都不提交
    • *.png 忽略所有的 .png 结尾的文件
    • !xxoo.png 但排除 xxoo.png

    想把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交

    • git rm -r --cached .
    • git add .
    • git commit -m 'update .gitignore'

    10.git差异化

    • 比较暂存区和当前的版本的差异 此命令比较的是工作目录(Working tree)和暂存区域快照(index)之间的差异
      也就是修改之后还没有暂存起来的变化内容。
    • git diff
    • git difftool 分屏比较
    • git diff sha1 sha2 比对2个不同的版本
    • git difftool sha1 sha2 分屏对比

    11.文件回退到暂存区

    • git checkout -- 文件名称

    12.保存工作区

    • git stash 保存内容(入栈) 切换分支的时候不会让另一个分支看到
    • git stash pop 回到最初保存的内容

    13.md5加密 不可逆

    • echo -n 123456 | openssl md5
    • -n就表示不输入回车符
    • 结果 e10adc3949ba59abbe56e057f20f883e

    14.base64加密/解密

    • 加密

      • echo abc | openssl base64
      • YWJjCg== (编码结果)
    • 解密

      • echo YWJjCg== | openssl base64 -d
      • abc (解码结果)
    • wc 统计字节数

      wc -l filename 报告行数
      wc -c filename 报告字节数
      wc -m filename 报告字符数
      wc -w filename 报告单词数
      

    相关文章

      网友评论

          本文标题:Git使用

          本文链接:https://www.haomeiwen.com/subject/ppbhwxtx.html