Git pull(拉取),push(上传)命令整理(详细)

git拉取远程代码

git clone  https://xxx.git

git拉取远程指定分支下代码(-b 分支名称)

git clone -b v2.8.1 https://xxx.git

初始化一个本地仓库,在同级目录下会出现一个隐藏的.git文件

git init

查看git的配置信息

git config -l

git配置本地仓库的userName(必须)

git config user.name 'Lee'

git配置本地仓库的邮箱(必须)

git config user.email '12345@qq.com'

三级文件配置路径

 .git/config
/.gitconfig        #当前用户目录
/etc/gitconfig     #git安装目录

本地提交到git索引(缓存)中

git add .        #把新增的、修改的都加到缓存
git add -A       #把新增、和修改的、和删除的都加到缓存

本地从缓存中加到文件库(repository)中

git commit -m '版本描述'  #提交到文件库

本地一件提交到文件库中

git commit -am '版本描述'   #一步完成提交

查看当前git状态信息(查看是否有文件未提交)

git status
image

git中的三类文件

被追踪的(tracked):已经加入文档库
不被追踪的(untracked):没有加入文档库
忽略的(ignored):忽略那些不需要管理的文件夹或文件

git新建忽略文件 目录下建立一个.gitignore文件(可以有多个,影响范围当前文件及子文件)

touch .gitignore

.gitignore文件忽略内容demo

# Maven #
target/ 
# IDEA #
.idea/
*.iml 
# Eclipse #
.settings/
.classpath
.project

注意:新建的一个忽略文件,为什么没有生效
答:可能是因为你的缓存区已经有忽略的文件了,所以需要先清空缓存区里的文件,重新add和commit操作

删除缓存区所有文件命令

git rm -r --cached .        #主要这个点一定要写

重新add到缓存区

git add .

每一次commit都是一个提交点,唯一标识SHA1的ID,ID可使用前4至7个数字表示

查看git的日志信息

git log
image

给提交点打标签 git tag -a v0.2 4a80f64(提交点SHA1的ID的前7位)

git tag -a tagV1 d819565b     #提交点SHA1的ID的前7位

回车之后会有输入tag内容的界面,然后像linux一样 点击i 编辑 输入信息后 esc 然后 :wq 保存退出

image

简化git日志输出格式

git log --oneline
image

显示主分支和自分支git日志 (前面会多个星号)

git log --oneline --graph
image

查看本地添加了哪些远程分支地址

git remote
image

查看本地添加了哪些远程分支地址(详细)

git remote -v
image

删除本地指定的远程地址

git remote remove origin

添加远程地址

git remote add origin https://xxxxxxxxxxxx.git

分支:分支意味着你可以从开发主线(master)上分离开,在不影响主线的同事继续工

git branch        #列出当前开发所有分支(默认会有master)
git branch king        #创建一个king的分支(最新提交点)
git branch king 提交点        # 创建一个king的分支(指定提交点)


git branch -d -r <branchname>        # 删除远程分支,删除后还需推送到服务器
git push origin:<branchname>        # 删除后推送至服务器


git branch -d king        #删除king分支  


git checkout king        #切换至king分支 


git checkout master     
git merge king        #合并分支king和主干master,合并后的提交点属于主干master
image

本地分支重命名

git branch -m <oldbranch> <newbranch>        #重命名本地分支

查看本地和远程的所有分支

git branch -a        # 查看本地和远程的所有分支

查看远程所有分支

git branch -r        # 查看远程所有分支

重命名远程分支:
1、删除远程待修改分支
2、push本地新分支到远程服务器

head节点代表最新的commit 显示head 信息

git show HEAD

回退:git reset 选项 提交点(选项:--hard表示全恢复 提交点:可用ID或标签)

git reset --hard v0.1

查询所有提交点

git reflog   #回退后需要反悔的话,需要通过此命令查找到所有操作的提交点

合并分支的起始点(不推荐)

git checkout master    
git rebase reking        #合并分支reking和主干master,合并后的提交点属于主干master
image

clone 克隆远程文件

git clone "远程地址"  "本地文件名称"

push 推送本地修改分支至远程git仓库

git push -u origin feature-wxDemo

fetch与pull
fetch是将远程主机的最新内容拉到本地,不进行合并

git fetch origin master

pull 则是将远程主机的master分支最新内容拉下来后与当前本地分支直接合并 fetch+merge

git pull origin master

如果远程分支是与当前分支合并,则冒号后面的部分可以省略。如下:

git pull origin master:feature-wxDemo        #git pull <远程主机名> <远程分支名>:<本地分支名>

统计文件改动

git diff --stat master origin/master        #git diff <local branch> <remote>/<remote branch> 

git分支说明

Production分支(主线分支用于发版,不会直接改)Master分支,这个分支只能从其他分支合并,不能在这个分支直接修改 Develop分支(开发分支)这个分支是我们是我们的主开发分支,包含所有要发布到下一个Release的代码,这个主要合并与其他分支,比如Feature分支 Feature分支(新功能分支)这个分支主要是用来开发一个新的功能,一旦开发完成,我们合并回Develop分支进入下一个Release  Release分支(偏向测试)当你需要一个发布一个新Release的时候,我们基于Develop分支创建一个Release分支,完成Release后,我们合并到Master和Develop分支 Hotfix分支(紧急bug发布)当我们在Production发现新的Bug时候,我们需要创建一个Hotfix, 完成Hotfix后,我们合并回Master和Develop分支,所以Hotfix的改动会进入下一个Release
image

比较本地分支与git 主分支差异情况

git diff --stat feature-wxAgentIm origin/master        # git diff <local branch> <remote>/<remote branch>

git中一些选项解释(重要):

-d
--delete:删除 

-D
--delete --force的快捷键 

-f
--force:强制 

-m
--move:移动或重命名 

-M
--move --force的快捷键 

-r
--remote:远程 

-a
--all:所有

转载于:https://blog.csdn.net/weixin_30699831/article/details/101982286

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,509评论 6 504
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,806评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,875评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,441评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,488评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,365评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,190评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,062评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,500评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,706评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,834评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,559评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,167评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,779评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,912评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,958评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,779评论 2 354