• git 操作


    如果已存在项目

    1、在git bash里 进入项目所在目录, git init //初始化

    2、git config --globle user.name 'happy' //设置远程仓库

    3、git config --globle user.email 'stone8386@sina.com'  //设置远程仓库

    4、用浏览器打开远端git 仓库, 比如 https://gitee.com/, 新建仓库,比如salary, 然后复制 克隆地址, 比如“https://gitee.com/happy76819/salary.git”

    5、git remote add salary 'https://gitee.com/happy76819/salary.git'   //设置远程仓库地址

    6、git pull salary master //从远程仓库拉取文件和本地文件合并

    7、git add -A  //提交到本地临时库

    8、git commit -m'first commit' //提交到本地仓库

    9、git  push --set-upstream salary master

    10、 git push   //上传到远程仓库

     

    git status //当前状态

    git reset HEAD  <file> //把暂存区恢复到之前的状态  用本地仓库文件覆盖暂存区文件 git reset HEAD~2 回到前2个快照

    git chechout --<file> //用暂存区的文件覆盖工作区的文件

    git log //查看历史记录

    git reset --mixed HEAD~  ([--mixed],默认添加该参数)

    -移动HEAD的指向, 将其指向上一个快照

    -将HEAD移动后指向的快照回滚到暂存区

    git reset --soft HEAD~

    移动HEAD指向,将其指向上一个快照, 不会把仓库文件覆盖到暂存区

    git reset --hard HEAD~

    移动HEAD的指向,将其指向上一个快照

    将HEAD移动后 指向的快照回滚到暂存区

    将暂存区的文件还原到工作目录

     git reset {id} 直接回滚到指定快照  (git log 查看id)

    git reset 版本快照 文件名/路径

    比较工作区和暂存区

    git diff

    执行带 --amend 选项的commit 提交命令, git就会更正最近一次提交 不会产生新的快照

    git commit --amend -m '新的说明'

    删除文件

    git rm <filename>  //删除只是工作目录和暂存区域的文件, 也就是取消跟踪, 在下次提交时不纳入版本管理

    git reset --soft HEAD~  把仓库里的快照恢复到上一快照

    重命名

    git mv oldfilename newfilename

    git 分支

    创建分支

    git branch  分支名称

    git log --decorate

    切换分支

    git checkout 分支名

    git log --decorate --online --graph --all

    合并分支

    git merge 分支名

    git checkout -b 分支名   创建分支,并切换过去

    删除分支

    git branch -d 分支名

    Git忽略规则(.gitignore配置)不生效原因和解决

       
    第一种方法:
    .gitignore中已经标明忽略的文件目录下的文件,git push的时候还会出现在push的目录中,或者用git status查看状态,想要忽略的文件还是显示被追踪状态。
    原因是因为在git忽略目录中,新建的文件在git中会有缓存,如果某些文件已经被纳入了版本管理中,就算是在.gitignore中已经声明了忽略路径也是不起作用的,
    这时候我们就应该先把本地缓存删除,然后再进行git的提交,这样就不会出现忽略的文件了。
      
    解决方法: git清除本地缓存(改变成未track状态),然后再提交:
    [root@kevin ~]# git rm -r --cached .
    [root@kevin ~]# git add .
    [root@kevin ~]# git commit -m 'update .gitignore'
    [root@kevin ~]# git push -u origin master
     
    需要特别注意的是:
    1).gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
    2)想要.gitignore起作用,必须要在这些文件不在暂存区中才可以,.gitignore文件只是忽略没有被staged(cached)文件,
       对于已经被staged文件,加入ignore文件时一定要先从staged移除,才可以忽略。
     
    第二种方法:(推荐)
    在每个clone下来的仓库中手动设置不要检查特定文件的更改情况。
    [root@kevin ~]# git update-index --assume-unchanged PATH                  //在PATH处输入要忽略的文件

     

  • 相关阅读:
    Oracle里的执行计划
    Java线程锁总结
    Java面试总结-链接
    oracle 排序函数(转载)
    微软今天的Windows 10硬件发布会汇总:手机瞬间变PC
    DevOps 在公司项目中的实践落地
    阿里云云计算工程师ACP学习笔记--知识点总结
    中小型互联网公司微服务实践-经验和教训
    Prometheus监控的最佳实践——关于监控的3项关键指标
    深度学习的Attention模型
  • 原文地址:https://www.cnblogs.com/leon-ytparty/p/10566508.html
Copyright © 2020-2023  润新知