• git开发实战:认识git


    git简介: 

      git是分布式版本控制系统,相比较svn相比,git会在本地保存完整的提交记录,即使远程服务器宕机数据消失,可以将本地分支提交到远程服务器,本地分支会保存完整的记录。只要文件提交到git中,就能保证这个文件永远不会丢失,可以根据提交id来找到这个文件。

        git上每次提交记录会记录上次提交的id,git是保存和当前提交文件和前一个提交文件对比,来保存,这样减少保存的空间。

        git的文件状态分为3中:

            已修改--已修改文件是保存在当前工作区,

            已暂存--将工作区修改的文件保存到缓存区中

            已提交--将缓存区中的文件提交到对象库

        git设置用户名可以分为3中,分别是全局、用户和本项目,在具体项目中使用哪个用户优先的优先级逐渐降低

            针对系统:git config --system user.name 'system name'

            针对用户:git config --global user.name 'global name'

            针对项目:git config --local user.name 'local user'

    git简单命令

        1. git init 初始化本地仓库

        2. git add .  将工作区修改的文件保存到缓存区中 git add hello.txt

        3. git commit 将缓存区中的文件添加到对象库  git commit -m '添加hello.txt文件'

           git reset --hard commit 回退到commit位置  ,在推送远程分支  git push -f 因为远程分支比本地分支commit提前,所以要强制推送,丢失commit后的提交

           git revert -n commit,反做commit版本,不会影响后面操作  git commit -m "revert add text.txt"  git push 提交并推送,只丢失

              revert相当于逆向操作,回退到上一步commit的内容

        4. git status 查看文件状态

           git rm hello.txt 删除文件  rm hello.txt删除文件

        5. git rm --cached hello.txt  将添加到缓存区中的hello.txt文件回退到工作区

        6. git HEAD hello.txt  另外一种将缓存区的文件回退到工作区

        7. git  log 查看提交日志 git log -2 查看最近两次提交日志

            git log pretty=online 日志以一行显示

            git log --graph 以图型化显示提交记录

            git reflog 记录所有的操作日志

        8. git branch 查看所有分支

            git branch newbranch 创建新分支

            git checkout newbranch 切换到新分支

            git checkout -b  newbranch2 新建并切换分支

        9. git merge newbranch 将newbranch分支内容合并到本分支上

            git merge --no-ff dev  以提交的方式合并分支

            合并时如果new分支内容高于现在分支的内容,即new分支在本分支基础上还有提交,这时将采用fast ford快速合并

            合并时如果不是上面的情况,可能会存在冲突,当冲突时,需要手工解决冲突

        10. git branch -m dev1 devlop  将dev1分支修改为devlop

        11. git stash 保存当前分支修改的内容临时保存

            git stash list 列出stash内容

             git stash pop 先恢复,再将已恢复的stash删除

             git stash apply 恢复stash,但不删除

             git stash drop stash{0} 删除stash0

             git stash -m '设置保存当前stash备注'

        12. 标签

            git tag v1.0

            git tag v2.0 -m '这时带有注释的标签'

            git tag -d v1.0 删除v1.0标签

            git tag 列出所有标签  git tag -l ‘*2’  列出标签结尾是2的所有标签

        13 diff

            git diff 比较工作区和缓存区文件之间不同

            git diff HEAD 比较工作区和最近一次提交文件的不同
            git diff -cached 比较最新提交和缓存区文件不同

        14 git pull git push

            git remote add origin git地址

            git push -u origin master  推送

            git pull 拉取最新分支,git fetch+git merge

            git push 推送最新分支,git fetxh+git merge

            git remote show 显示远程分支   git remote show origin 详细显示origin分支

            git同一个分支会存在3份,分别是本地分支,本地远程分支(远程分支,只读),远程分支,

                  在pull时,首先将远程分支的最近一次提交id同步给本地远程分支,然后后本地远程分支和本地分支合并(可能会产生冲突),提交时也是这样。

        15. 将本地分支推送到远程分支上

            git push origin src:desc 将本地的src分支内容,推送到远程desc分支

            git push origin :desc 将空分支推送到远程,远程分支被删除

            git push origin --delete dev 删除分支

            git push --set-upstream origin dev1:dev2 将本地的dev1分支创建到远程的dev2分支上

        16 远程分支修改名字只能先删除分支,再将本地分支推送大远程分支上

        17 建议本地分支和远程分支名一致

  • 相关阅读:
    hive_学习_00_资源帖
    大数据_学习_02_目录贴_大数据学习总结
    hadoop_异常_02_ExitCodeException exitCode=1: chmod: changing permissions of `/ray/hadoop/dfs/data': Operation not permitted
    hbase_异常_05_End of File Exception between local host is: "rayner/127.0.1.1"; destination host is: "localhost":9000;
    hbase_异常_04_util.FSUtils: Waiting for dfs to exit safe mode...
    hbase_异常_03_java.io.EOFException: Premature EOF: no length prefix available
    hbase_异常_02_hbase无法访问16010端口
    hbase_异常_01_Hbase: Failed to become active master
    【HDU】2147 kiki's game
    【HDU】1517 A Multiplication Game
  • 原文地址:https://www.cnblogs.com/dc-earl/p/11386051.html
Copyright © 2020-2023  润新知