git用法

在这里插入图片描述
git init

git init 命令来初始化一个 Git 仓库

git add 命令可将该文件添加到暂存区

git add xx 添加某个工作区文件 xx到暂存区
git add . 将当前工作目录的所有文件保存到暂存区

git commit

git commit -m ’ 提交时的做了哪些改变 ’ 将缓存区内容添加到版本库中。
git commit -am ’ 提交时的做了哪些改变 ’ 如果你觉得 git add 提交缓存的流程太过繁琐,Git 也允许你用 -am 选项跳过这一步

git status 命令用于查看项目的当前状态

git diff 命令显示已写入缓存与已修改但尚未写入缓存的改动的区别
•尚未缓存的改动:git diff
• 查看已缓存的改动: git diff --cached
• 查看已缓存的与未缓存的所有改动:git
diff HEAD • 显示摘要而非整个 diff:git diff --stat
git status 显示你上次提交更新后的更改或者写入缓存的改动, 而 git diff 一行一行地显示这些改动具体是啥。

git reset

git reset git reset HEAD 命令用于取消已缓存的内容。 git reset HEAD
hello.php 取消hello.php缓存

git rm

git rm 从工作目录中手工删除文件
git rm --cached 如果把文件从暂存区域移除(不从工作区中删除文件)
git rm -f 如果删除之前修改过并且已经放到暂存区域的话(从工作区中删除文件)
git rm –r <file文件夹>可以递归删除,即如果后面跟的是一个目录做为参数,则会递归删除整个目录中的所有子目录和文件:

git mv

git mv a命令用于移动或重命名一个文件、目录、软连接。
git mv A B 然后对A重命名为B/(或移动进入B中 要是文件没变):

git 分支管理

git branch 列出分支基本命令:

git branch (branchname) 创建分支命令:

git checkout (branchname) 切换分支命令:

当我们切换到 testing 分支的时候,我们添加的新文件 test.txt 被移除了。切换回 master 分支的时候,它们有重新出现

git branch -D (branchname) 删除分支命令:

git merge 合并分支命令:

git merge A 将A分支合并到当前的主分支

以上实例中我们将 A 分支合并到主分支去,test.txt 文件被删除。 合并完后就可以删除分支: git branch -d newtest

git 合并分支并解决冲突

git checkout -b (branchname) 创建新分支并立即切换到该分支下,从而在该分支中操作。

git merge A 将A分支合并到当前的主分支

vim a 文件发生冲突 打开文件解决冲突后 使用git add 文件a 告诉git 解决冲突

git branch -D A 删除分支A 合并分支成功

git commit -m a ‘文件解决冲突 合并到本地仓库’

Git 查看提交历史

git log 命令列出历史提交记录

–oneline 选项来查看历史记录的简洁的版本。

–graph 选项,查看历史中什么时候出现了分支、合并。
–reverse 参数来逆向显示所有日志

–author

eg: git log --author=Linus --oneline -5

如果你要指定日期,可以执行几个选项:–since 和 --before,但是你也可以用 --until 和 --after。

eg: git log --oneline --before={3.weeks.ago} --after={2010-04-18}
–no-merges

Git 标签
如果你达到一个重要的阶段,并希望永远记住那个特别的提交快照,你可以使用 git tag 给它打上标签。
比如说,我们想为我们的 runoob 项目发布一个"1.0"版本。 我们可以用 git tag -a v1.0 命令给最新一次提交打上(HEAD)“v1.0"的标签。
-a 选项意为"创建一个带注解的标签”。 不用 -a 选项也可以执行的,但它不会记录这标签是啥时候打的,谁打的,也不会让你添加个标签的注解。 我推荐一直创建带注解的标签。

git tag -a vx 创建标签 eg:git tag -a v0.9 85fc7e7

git log --decorate 时,我们可以看到我们的标签

git tag 查看已有标签

git tag -d vx 删除标签

git show vx 查看此版本的所有修改内容

GITHUB

git remote add origin url 提交到github的仓库地址

git remote add origin https://github.com/XXX/blog.git

git push -u origin master 把当前主干推送到仓库的主干上去

git remote 查看当前的远程库

git remote -v 查看每个别名的实际地址

git remote rm origin 删除远程仓库

提取远程仓库

  1. git fetch 从远处仓库下载新分支与数据:eg: git fetch origin master
    git fetch origin master 时,它的意思是从名为 origin 的远程上拉取名为 master 的分支到本地分支 origin/master 中。既然是拉取代码,当然需要同时指定远程名与分支名,所以分开写。
    还可以一次性拉取多个分支的代码:git fetch origin master stable oldstable;

  2. git merge 从远端仓库提取数据并尝试合并到当前分支 eg:git merge origin/master

执行 git merge origin/master 时,它的意思是合并名为 origin/master 的分支到当前所在分支。

也还可以一次性合并多个分支的代码:git merge origin/master hotfix-2275 hotfix-2276
hotfix-2290;

该命令就是在执行 git fetch 之后紧接着执行 git merge 远程分支到你所在的任意分支。

假设你配置好了一个远程仓库,并且你想要提取更新的数据,你可以首先执行 git fetch [alias] 告诉 Git 去获取它有你没有的数据,然后你可以执行

git merge [alias]/[branch]

以将服务器上的任何更新(假设有人这时候推送到服务器了)合并到你的当前分支。

git fetch 从远程仓库下载分支和数据到本地 ,需要自己git merge 合并分支

git pull:相当于是从远程获取最新版本并merge到本地

git puish :推送本地master 到远程仓库

git clone 从现有 Git 仓库中拷贝项目(类似 svn checkout)

git clone repo directory ;repo:Git 仓库 directory:本地目录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值