git命令

git init

将一个文件夹变为初始化仓库

echo "hello" >> hello

创建一个名为hello的文件

git add .

将所有内容提交到临时仓库

注:临时仓库记录在下图中位置

git commit hello -m "init hello"

提交到版本仓库,注释“init hello”

注:版本仓库保存在下图中位置(经过混淆和加密)

git clone https://github.com/square/okhttp

将okhttp工程克隆到本地

git remote

在代码文件夹中查看远程版本号

git remote -v

查看代码下载的网络地址(remote 是从远程下载到本地的)

git status

查看工程中文件状态(有么有修改没提交的啊之类的)

cat .gitignore

查看被忽略的文件(在文件.gitignore中配置)

git diff/git diff --staged   //比较工作区域和临时区域
git diff --cached    //比较临时区域和本地仓库
vim 文件名

编辑文件内容

cat 文件名

查看文件内容

git rm 文件名

删除索引区文件

git checkout -- 文件名

找回索引区被删除文件

git log

查看日志

git whatchanged

查看哪些已修改

git push/pull/fetch

将本地仓库内容推送到远程仓库/将远程仓库内容拉取到本地仓库并合并/将将远程仓库内容拉取到本地仓库但不合并,即新建一个分支

git branch

查看分支

git remote

查看远程仓库

git branch 分支名

新建分支

git checkout 分支名

切换分支

git merge "注释" HEAD 分支名

合并分支到当前最新的分支

git tag -a 标识名 “注释”

加标识便于恢复

--git和svn区别

速度
在很多情况下,git的速度远远比SVN快

结构
SVN是集中式管理,git是分布式管理

其他
SVN使用分支比较笨拙,git可以轻松拥有无限个分支
SVN必须联网才能正常工作,git支持本地版本控制工作
旧版本的SVN会在每一个目录置放一个.svn,git只会在根目录拥有一个.git

git reset id 

----id是提示错误的commit id的上一条id

android studio中使用Git,鸿洋的一篇文章足以 详细讲解Android Studio中使用Git

Git提供了一个命令git reflog用来记录你的每一次命令:

No1:

回撤场景:

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD <file>,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id,不过前提是没有推送到远程库。

No2:

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>

No3:

当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场。

No4:

如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name>强行删除。

No5:

  • rebase操作可以把本地未push的分叉提交历史整理成直线;

  • rebase的目的是使得我们在查看历史提交的变化时更容易,因为分叉的提交需要三方对比。

 No6:

  • 命令git push origin <tagname>可以推送一个本地标签;

  • 命令git push origin --tags可以推送全部未推送过的本地标签;

  • 命令git tag -d <tagname>可以删除一个本地标签;

  • 命令git push origin :refs/tags/<tagname>可以删除一个远程标签

No7:

给git命令起别名

git config --global alias.co checkout

No8:

修改远程仓库地址

git remote set-url origin [url]

 No9:

删除本地分支

git branch -d <BranchName>

删除远程分支

git push origin --delete <BranchName>

No10:

打tag:

git tag -a <版本号> <SHA值> -m "<备注信息>"

 

原文地址:https://www.cnblogs.com/anni-qianqian/p/6532005.html