`

git命令

    博客分类:
  • util
阅读更多

一, 概念

   Git: 是免费的,开源的分布式软件控制系统。

   更多介绍,可见百度百科

 

 二, 工作流程

  一般工作流程如下:

  • 克隆 Git 资源作为工作目录。
  • 在克隆的资源上添加或修改文件。
  • 如果其他人修改了,你可以更新资源。
  • 在提交前查看修改。
  • 提交修改。
  • 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。

 

三, 基本命令

  1, git init

        在目录中创建新的Git仓库.

      demo:  mkdir test  --> cd test  --> git init -->

                   ls -a   查看

   2, git clone [url]:   copy一个git仓库到本地

   3, git add: 将文件添加到暂存区

        demo:   git add file1 

                     git add file2  file3

                     git add -A    添加所有修改文件

   4,  git status: 查看上次提交后是否有修改

         加 -s 简短结果输出

   5, git diff: 显示已写入暂存区与已修改但尚未写入暂存区的改动的区别

        demo:   git diff                查看尚未缓存的改动

                     git diff --cached  查看已暂存的改动

                     git  diff HEAD    查看已缓存于未缓存的所以改动

                     git diff --stat       显示摘要而非整个diff

   6, git commit       将暂存区内的内容添加到仓库中

        git commit -m '版本提交信息'

        git commit -a 跳过git add这一步.

        git commit -am '相当于上面二个命令'

   7, git reset HEAD 取消已缓存的内容

   8, git rem  从工作目录中手动删除文件

       git rem <file>  

       git rem -f <file> 强制删除. 比如之前修改过,但放入了缓存区

       git rem --cached <file>

       git rem -r  *   递归删除,即后面是一个目录,会删除该目录下所有子文件跟子目录

   9, git mv   用于移动或重命名一个文件,目录, 软链接

   10, git push origin master

   11, git pull origin master

    12, 长期保持密码  git config --global credential.helper store

 

四, 分支管理

   1, git branch <branchname>    创建分支

    2, git checkout <branch name>  切换分支

    3, git merge 合并分支

    4, git branch 列出分支

         没有参数,列出本地分支

    5, git branch -d <branch name> 删除分支命令

    6, 合并冲突:  创建一个新分支,切换过去,修改并提交

     demo: git checkout -b change_site

vim test.txt

head -l test.txt

git commit -am 'sssdd'

 

五, 查看历史

    1, git log

        git log --oneline     查看简介版本

        git log --oneline  --graph  查看历史中什么时候出现分支,合并

        --reverse 逆向显示所有日志

        --author   查看具体谁提交的

        demo : git log --author=darren --oneline -5

       more...

 

六, 其他

    1, 用户信息

        $ git config --global user.name "Your Name"  

        $ git config --global user.email "email@example.com"  

   2, 与SVN区别

      1), GIT是分布式的,SVN不是,最核心的区别。

       2), GIT把内容按元数据方式存储,而SVN是按文件:

             所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。

      3), GIT分支和SVN的分支不同:分支在SVN中一点不特别,就是版本库中的另外的一个目录。

      4), GIT没有一个全局的版本号,而SVN有:目前为止这是跟SVN相比GIT缺少的最大的一个特征。

      5), GIT的内容完整性要优于SVN:GIT的内容存储使用的是SHA-1哈希算法

           这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。

 

备注:  Git 完整命令手册地址http://git-scm.com/docs

            PDF 版命令手册:github-git-cheat-sheet.pdf

 

参考: http://blog.csdn.net/u013210620/article/details/50318225

          http://www.runoob.com/git/git-tutorial.html

         https://www.cnblogs.com/wish123/p/3937851.html

 

  • 大小: 37.3 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics