git常用命令集合

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cadi2011/article/details/82754969

1、拉代码

git clone https://github.com/googlesamples/android-architecture.git    默认不填写分支,拉取仓库中的全部分支

git clone -b  https://github.com/googlesamples/android-architecture.git   -b后指定仓库中的分支

2、强制远程仓库覆盖本地仓库(哥解决冲突的时候,就这么霸气)

git fetch --all

git reset --hard origin/master           master是远程分支

git pull    这个就不用啦

3、拉当前分支最新代码,应该哈

git pull

4、查看当前分支的提交记录日志

git log

5、查看记录记录,不过是单行展示每一次的提交哦

git log --oneline

6、按照提交的message,头痛关键字keywords进行搜索

git log --grep keywords

7、按照提交的作者名,进行搜索

git log --author yourname

8、查看本地当前分支

git branch

9、查看所有远程分支

git branch -r

10、拉取远程分支并创建本地分支 (前提,当前的分支,一定没有冲突哈,比如你正在master,master有冲突)

方式1:

git checkout -b 本地分支名x origin/远程分支名x
使用该方式会在本地新建分支x,并自动切换到该本地分支x。

采用此种方法建立的本地分支会和远程分支建立映射关系

方式2:

git fetch origin 远程分支名x:本地分支名x
使用该方式会在本地新建分支x,但是不会自动切换到该本地分支x,需要手动checkout。

此种方法建立的本地分支不会和远程分支建立映射关系。

11、切换当前本地分支,以及远程分支

git checkout 分支名

12、我现在用上面的命令就能满足需求呀

13、git add 

提交本地所有修改文件

14、git commit -m 评论内容,  然后提交到本地仓库

15、比如一个提交的常见命令

简单的代码提交流程
git status 查看工作区代码相对于暂存区的差别
git add . 将当前目录下修改的(当对Android Studio 中的app目录,即Module,选择Git的时候,就是所有代码从工作区添加到暂存区 . 代表当前目录
git commit -m ‘注释’ 将缓存区内容添加到本地仓库
git push origin master 将本地版本库推送到远程服务器, 
origin是远程主机,master表示是远程服务器上的master分支,分支名是可以修改的

16、这里插个嘴

a、Module的工程类型

plugin: 'com.android.library'   库类型
apply plugin: 'com.android.application' 应用类型

17、写的挺好的啊,我就给转载过来了

Git add
 git add [参数] <路径> 作用就是将我们需要提交的代码从工作区添加到暂存区,就是告诉git系统,我们要提交哪些文件,之后就可以使用git commit命令进行提交了。 
 为了方便下面都用 . 来标识路径, . 表示当前目录,路径可以修改,下列操作的作用范围都在版本库之内。

git add . 
不加参数默认为将修改操作的文件和未跟踪新添加的文件添加到git系统的暂存区,注意不包括删除
git add -u . 
-u 表示将已跟踪文件中的修改和删除的文件添加到暂存区,不包括新增加的文件,注意这些被删除的文件被加入到暂存区再被提交并推送到服务器的版本库之后这个文件就会从git系统中消失了。
git add -A . 
-A 表示将所有的已跟踪的文件的修改与删除和新增的未跟踪的文件都添加到暂存区。
Git commit
 git commit 主要是将暂存区里的改动给提交到本地的版本库。每次使用git commit 命令我们都会在本地版本库生成一个40位的哈希值,这个哈希值也叫commit-id, 
 commit-id 在版本回退的时候是非常有用的,它相当于一个快照,可以在未来的任何时候通过与git reset的组合命令回到这里.

git commit -m ‘message’ 
-m 参数表示可以直接输入后面的“message”,如果不加 -m参数,那么是不能直接输入message的,而是会调用一个编辑器一般是vim来让你输入这个message, 
message即是我们用来简要说明这次提交的语句。
git commit -am ‘message’ -am等同于-a -m 
-a参数可以将所有已跟踪文件中的执行修改或删除操作的文件都提交到本地仓库,即使它们没有经过git add添加到暂存区, 
注意: 新加的文件(即没有被git系统管理的文件)是不能被提交到本地仓库的。
Git push
 在使用git commit命令将修改从暂存区提交到本地版本库后,只剩下最后一步将本地版本库的分支推送到远程服务器上对应的分支了,如果不清楚版本库的构成,可以查看我的另一篇,git 仓库的基本结构。 
 git push的一般形式为 git push <远程主机名> <本地分支名> <远程分支名> ,例如 git push origin master:refs/for/master ,即是将本地的master分支推送到远程主机origin上的对应master分支, origin 是远程主机名。第一个master是本地分支名,第二个master是远程分支名。

git push origin master 
如果远程分支被省略,如上则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则会被新建
git push origin :refs/for/master 
如果省略本地分支名,则表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支,等同于 git push origin –delete master
git push origin 
如果当前分支与远程分支存在追踪关系,则本地分支和远程分支都可以省略,将当前分支推送到origin主机的对应分支
git push 
如果当前分支只有一个远程分支,那么主机名都可以省略,形如 git push,可以使用git branch -r ,查看远程的分支名
 关于 refs/for: 
refs/for 的意义在于我们提交代码到服务器之后是需要经过code review 之后才能进行merge的,而refs/heads 不需要

猜你喜欢

转载自blog.csdn.net/cadi2011/article/details/82754969