Git

Posted betaa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git相关的知识,希望对你有一定的参考价值。

1. Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或大或小的项目。

2. Git工作流程:
技术图片

3.  Working Directory: 工作目录

     Index(Stage): 暂存区,保存临时改动

     History: 仓库,head指向最后一次提交的结果

技术图片

 

上面的四条命令在工作目录、暂存目录和仓库之间复制文件:

  • git add files               把当前文件放入暂存区
  • git commit                 给暂存区生成快照并提交
  • git reset --files           3种模式
  • git checkout --files    把文件从暂存区复制到工作目录,用来丢弃本地修改

4. 基本操作:

git init 使用当前目录作为Git仓库
git add files files从工作目录加入暂存区(git add .添加当前项目的所有文件)
git commit -m "代码提交信息" 将暂存区代码提交到仓库
git clone [url] 将一个Git仓库clone到本地
git status -s 查看当前项目的状态 A:已添加 AM:添加之后又有改动 -s表示简洁输出结果,没有参数会详细输出内容
git diff 查看尚未缓存的改动
git diff --cached 查看已缓存的改动
git diff HEAD 查看已缓存的与未缓存的所有改动
git diff --stat 显示摘要而非整个diff
git commit -am "代码提交信息" 同时进行git add和git commit
git reset HEAD 取消已缓存内容
git rm <file> 从Git中移除某个文件
git rm -f <file> 如果删除之前修改过并且已经存放到暂存区,必须要用强制删除选项
git rm --cached <file> 把文件从暂存区中移除,但仍保留在当前工作目录中
git mv 移动或重命名一个文件、目录或软连接
git branch (branchname) 创建分支
git checkout (branchname) 切换分支
git branch 列出分支
git checkout -b (branchname) 创建分支并立即切换到该分支下
git branch -d (branchname) 删除分支
git merge (branchname) 将分支合并到当前分支
git log 查看提交历史
git log --oneline 查看历史记录的简洁版本
git log --graph 查看历史中什么时候出现了分支、合并
git log --reverse 逆向显示所有日志
git remote add origin [url] 添加远程仓库
git push -u origin master 将代码提交到Github
git remote 查看当前配置有哪些远程仓库
git remote -v 查看当前配置有哪些远程仓库并显示每个别名的实际链接地址
git fetch origin 从远程仓库下载新分支与数据
git merge origin/master 将从远程仓库取回的数据合并到当前分支
git push [alias] [branch] 以上命令将你的 [branch] 分支推送成为 [alias] 远程仓库上的 [branch] 分支

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5. git fetch 和 git pull 的区别:

  • git fetch   是将远程仓库的最新内容拉到本地,用户在检查了以后决定是否合并到工作本机分支中。
  • git pull     将远程仓库的最新内容拉下来后直接合并,即:git pull = git fetch + git merge,这样可能会产生冲突,需要手动解决。

 

技术图片

以上是关于Git的主要内容,如果未能解决你的问题,请参考以下文章

Git 学习路线

从0到1带你掌握git(一分钟掌握git)--git如何下载?git如何使用?git是什么?git怎么获取文件?

Git认识与使用 Git

Git认识与使用 Git

Git认识与使用 Git

Git认识与使用 Git