git 拉取远端仓库_git命令-远程仓库拉取、本地仓库更新、工作空间提交等等

一,新建代码库

1,在当前目录下新建一个git代码库

$ git init

2,新建一个目录将其初始化为git代码库

$ git init [project-name]

3,git clone 远程代码库

$ git clone [url]

二,配置

1,Git的设置文件为.gitconfig,它可以在用户主目录下(全局配置),也可以在项目目,录(项目配置)。

2, 显示当前的Git配置

$ git config--list

3,编辑git配置文件

$ git config -e[--global]

4,设置提交代码时的用户信息

$ git config[--global] user.name "[name]"

$ git config[--global] user.email "[email address]"

三、增加/删除文件

1,添加指定文件到暂存区

$ git add [file1][file2] ...

2, 添加指定目录到暂存区,包括子目录,

$ git add [dir]

3, 添加当前目录的所有文件到暂存区

$ git add .

4 添加每个变化前,都会要求确认, 对于同一个文件的多处变化,可以实现分次提交

$ git add -p

5,删除工作区文件,并且将这次删除放入暂存区

$ git rm [file1][file2] ...

6, 停止追踪指定文件,但该文件会保留在工作区

$ git rm --cached[file]

7, 改名文件,并且将这个改名放入暂存区

$ git mv[file-original] [file-renamed]

四、代码提交

1, 提交暂存区到仓库区,

$ git commit -m[message],

2, 提交暂存区的指定文件到仓库区

$ git commit[file1] [file2] ... -m [message],

3,提交工作区自上次commit之后的变化,直接到仓库区

$ git commit -a,

4, 提交时显示所有diff信息

$ git commit -v

5,使用一次新的commit,替代上一次提交,如果代码没有任何新变化,则用来改写上一次commit的提交信息

$ git commit--amend -m [message]

6, 重做上一次commit,并包括指定文件的新变化

$ git commit--amend [file1] [file2] ...

五、分支

1, 列出所有本地分支

$ git branch

2, 列出所有远程分支

$ git branch -r

3, 列出所有本地分支和远程分支

$ git branch -a

4, 新建一个分支,但依然停留在当前分支

$ git branch[branch-name]

5, 新建一个分支,并切换到该分支

$ git checkout -b[branch]

6, 新建一个分支,指向指定commit

$ git branch[branch] [commit]

7, 新建一个分支,与指定的远程分支建立追踪关系

$ git branch--track [branch] [remote-branch]

8, 切换到指定分支,并更新工作区

$ git checkout[branch-name],

9, 切换到上一个分支

$ git checkout -,

10, 建立追踪关系,在现有分支与指定的远程分支之间

$ git branch--set-upstream [branch] [remote-branch]

11, 合并指定分支到当前分支,

$ git merge[branch]

12, 选择一个commit,合并进当前分支,

$ git cherry-pick[commit]

13, 删除分支,

$ git branch -d[branch-name]

14, 删除远程分支,

$ git push origin--delete [branch-name]

$ git branch -dr[remote/branch]

六、标签,

1, 列出所有tag

$ git tag

2, 新建一个tag在当前commit,

$ git tag [tag]

3, 新建一个tag在指定commit,

$ git tag [tag][commit]

4, 删除本地tag,

$ git tag -d[tag]

5, 删除远程tag,

$ git push origin:refs/tags/[tagName]

6, 查看tag信息,

$ git show [tag]

7, 提交指定tag,

$ git push[remote] [tag]

8, 提交所有tag,

$ git push[remote] --tags

9, 新建一个分支,指向某个tag

$ git checkout -b[branch] [tag]

七、查看信息

1, 显示有变更的文件

$ git status

2, 显示当前分支的版本历史

$ git log

3, 显示commit历史,以及每次commit发生变更的文件

$ git log --stat

4, 搜索提交历史,根据关键词

$ git log -S[keyword]

5, 显示某个commit之后的所有变动,每个commit占据一行

$ git log [tag]HEAD --pretty=format:%s

6, 显示某个commit之后的所有变动,其"提交说明"必须符合搜索条件,

$ git log [tag]HEAD --grep feature

7, 显示某个文件的版本历史,包括文件改名

$ git log --follow[file]

$ git whatchanged[file]

8, 显示指定文件相关的每一次diff

$ git log -p[file]

9, 显示过去5次提交,

$ git log -5--pretty --oneline

10, 显示所有提交过的用户,按提交次数排序

$ git shortlog-sn

11, 显示指定文件是什么人在什么时间修改过,

$ git blame[file]

12, 显示暂存区和工作区的差异

$ git diff

13,显示暂存区和上一个commit的差异

$ git diff--cached [file]

14, 显示工作区与当前分支最新commit之间的差异

$ git diff HEAD

14, 显示两次提交之间的差异,

$ git diff[first-branch]...[second-branch]

15,显示今天你写了多少行代码,

$ git diff--shortstat "@{0 day ago}"

16, 显示某次提交的元数据和内容变化

$ git show[commit]

17, 显示某次提交发生变化的文件,

$ git show--name-only [commit]

18,显示某次提交时,某个文件的内容

$ git show[commit]:[filename]

19, 显示当前分支的最近几次提交

$ git reflog

八、远程同步

1, 下载远程仓库的所有变动

$ git fetch[remote]

2,显示所有远程仓库,

$ git remote -v

3, 显示某个远程仓库的信息,

$ git remote show[remote]

4, 增加一个新的远程仓库,并命名

$ git remote add[shortname] [url]

5,取回远程仓库的变化,并与本地分支合并

$ git pull[remote] [branch]

6, 上传本地指定分支到远程仓库

$ git push[remote] [branch]

7, 强行推送当前分支到远程仓库,即使有冲突

$ git push[remote] --force

8, 推送所有分支到远程仓库

$ git push[remote] --all

九、撤销

1, 恢复暂存区的指定文件到工作区,

$ git checkout[file]

2, 恢复某个commit的指定文件到暂存区和工作区,

$ git checkout[commit] [file]

3,恢复暂存区的所有文件到工作区,

$ git checkout .

4, 重置暂存区的指定文件,与上一次commit保持一致,但工作区不变

$ git reset[file]

5, 重置暂存区与工作区,与上一次commit保持一致

$ git reset--hard

6, 重置当前分支的指针为指定commit,同时重置暂存区,但工作区不变

$ git reset[commit]

7, 重置当前分支的HEAD为指定commit,同时重置暂存区和工作区,与指定commit一致

$ git reset--hard [commit]

8, 重置当前HEAD为指定commit,但保持暂存区和工作区不变

$ git reset--keep [commit]

9, 新建一个commit,用来撤销指定commit, 后者的所有变化都将被前者抵消,并且应用到当前分支

$ git revert[commit]

10, 暂时将未提交的变化移除,稍后再移入

$ git stash

$ git stash pop

十、其他

1, 生成一个可供发布的压缩包

$ git archive

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/525769.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c语言二维数组对每一列排序,二维数组对每一行进行排序。。

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼这是我的代码、、问题出在换行的时候sum[i][j]的值还保存着上一行的值、、#include "stdafx.h"#include"stdio.h"int main(){int sum[3][4]{{2,3,4,5},{4,3,2,5},{1,3,5,9}};for(int i0;i<3;i){for(int j0;…

vscode 头文件包含问题_使用clangd替代c/c++配置vscode c++项目

背景&#xff1a;最近从Clion切换到了vscode来进行代码开发&#xff0c;发现vscode自带的c/c插件除了能够使用debug功能&#xff0c;其余代码补全&#xff0c;跳转等功能都和基于clangd的clion有较大差距&#xff0c;经常出现匹配不上或者跳转不准确的问题&#xff0c;在这背景…

微服务拆分需要考虑的必要因素与坚持原则

前言&#xff1a;创业公司往往因为有限的时间和投入&#xff0c;把系统所有的功能都聚集在一起。随着业务的不断发展&#xff0c;技术人员开始不断地对架构进行解耦和拆分。微服务在最近几年大行其道&#xff0c;很多公司的研发人员都在考虑微服务架构&#xff0c;或者在做微服…

android如何建立全局变量,如何在Android中声明全局变量?

我正在创建一个需要登录的应用程序。 我创建了主要和登录活动。在主要活动onCreate方法中我添加了以下条件&#xff1a;public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);...loadSettings();if(strSession…

data后缀文件解码_Java语法进阶13-文件、IO流

FileFile是文件和目录路径名的抽象表示形式&#xff0c;即File类是文件或目录的路径&#xff0c;而不是文件本身&#xff0c;因此File类不能直接访问文件内容本身&#xff0c;如果需要访问文件内容本身&#xff0c;则需要使用输入/输出流。File类的对象用来表示文件和文件夹的对…

中小型互联网公司微服务实践-经验和教训

上次写了一篇文章叫Spring Cloud在国内中小型公司能用起来吗?介绍了Spring Cloud是否能在中小公司使用起来&#xff0c;这篇文章是它的姊妹篇。其实我们在这条路上已经走了一年多&#xff0c;从16年初到现在。在使用Spring Cloud之前我们对微服务实践是没有太多的体会和经验的…

android图片适配到裁剪框,Android图片剪裁-调用系统实现,完美适配魅族等机型

System-Photo-CropperAndroid System Photo Cropper 使用系统原生的图片剪裁库&#xff0c;完美适配魅族等机型Step 1First you need a sysPhotoCropper to handle the activity results of cropping photos.Overrideprotected void onActivityResult(int requestCode, int res…

php程序里的configini_程序员手册 修改php.ini的几种方法

修改php.ini配置文件的几个函数先做一下介绍:php中修改php配置文件(php.ini)的函数主要有四个函数&#xff1a;ini_get、ini_set、ini_get_all、ini_restore。其中ini_set和ini_get比较常用,下面分别做介绍。(1)ini_get()用来获取配置文件的选项值.这个函数很多人都使过&#x…

对于机器学习,到底该选择哪种编程语言

开发者到底应该学习哪种编程语言才能获得机器学习或数据科学这类工作呢&#xff1f;这是一个非常重要的问题。我们在许多论坛上都有讨论过。现在&#xff0c;我可以提供我自己的答案并解释原因&#xff0c;但我们先看一些数据。毕竟&#xff0c;这是机器学习者和数据科学家应该…

android如何适配平板,适用于平板电脑、大屏设备和可折叠设备的自适应布局

将应用支持扩展到更大屏幕的设备(例如平板电脑、可折叠设备和 Chrome 操作系统设备)是扩大您的覆盖面和互动度的绝佳方式。平板电脑的增长率比去年同期 (YOY) 大幅增长了 30%&#xff0c;Chrome 操作系统设备比去年同期增长了 92%。我们还发现&#xff0c;用户使用平板电脑的时…

string修饰的梦修改吗_知识点!!!NSString用copy和strong修饰的区别

废话不多说直接上例子。结果在下边&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;用strong修饰&#xff1a;interface ViewController ()property(nonatomic,strong)NSString *str1;endimplementation ViewController- (void)viewDidLoad {[super viewDidLoad]…

对于机器学习,到底该选择哪种编程语言?

开发者到底应该学习哪种编程语言才能获得机器学习或数据科学这类工作呢&#xff1f;这是一个非常重要的问题。我们在许多论坛上都讨论过这个问题。今天&#xff0c;我将给出我自己的答案并解释其中原因&#xff0c;但我们首先看一些数据。毕竟&#xff0c;这是机器学习者和数据…

置顶图片代码加链接html,css图片怎么加链接?

css可以通过在图片前加标签实现为图片加链接&#xff0c;语法&#xff1a;。使用此方法引入图片即可为图片添加链接。设定图片超链接&#xff0c;用css样式来实现&#xff0c;其实就是给这个图片的块添加超链接&#xff0c;我们可以通过在这个块的前面添加一个a标签来实现&…

linux上修改html,linux进程名修改

如何修改 Linux 中的进程名在编写网络服务器程序时&#xff0c;为了响应客户端的请CSS布局HTML小编今天和大家分享&#xff0c;我们经常需要新建进程来处理业务流程&#xff1b;而且又是为了关闭某个非法请CSS布局HTML小编今天和大家分享或者关闭长连接的客户端&#xff0c;这时…

AI 崛起,科学家的天下,程序员的谢幕

一边&#xff0c;在移动互联网时代掉队的微软迅速组织起来了一个万人的 AI 团队。 另一边&#xff0c;Facebook、Google 在对各个技术公司进行买买买&#xff0c;为了在 AI 时代的探索中铺好路。 多年前「深蓝」下国际象棋时&#xff0c;所有人都觉得人工智能还是遥不可及的学…

lammps计算聚合物例子_LAMMPS模拟聚合物结构,非晶态聚合物变形行为的模拟,纳米线变形模拟,单轴张力模拟,晶格参数计算...

推荐一个网站&#xff0c;上面有LAMMPS模拟聚合物结构,非晶态聚合物变形行为的模拟,纳米线变形模拟,单轴张力模拟,晶格参数计算的lammps脚本&#xff0c;如下面是晶格参数计算的lammps脚本&#xff0c;具体网址是&#xff1a;LAMMPS Inputs Archives - LAMMPS Tube​lammpstube…

jenkins 手动执行_Jenkins Git client插件命令执行漏洞(CVE201910392)

0x00 漏洞描述Jenkins发布了官方安全公告&#xff1a;https://jenkins.io/security/advisory/2019-09-12/,Git客户端插件中的系统命令执行漏洞。Git客户端插件接受用户指定的值作为调用的参数&#xff0c;git ls-remote以验证指定URL处是否存在Git存储库。这是以允许具有Job/Co…

Python核心团队计划2020年停止支持Python2,NumPy宣布停止支持计划表

Python核心团队计划在2020年停止支持Python 2。NumPy项目自2010年以来一直支持Python 2和Python 3&#xff0c;并且发现支持Python 2对我们有限的资源增加了负担&#xff1b;因此&#xff0c;我们最终计划将停止支持Python 2。现在&#xff0c;我们已经进入了社区支持的Python …

怎么把html表复制到word里,怎么把网页表格复制到word

在互联网时代我们经常要在网页中找资料&#xff0c;文字进行复制粘贴调整格式还好&#xff0c;但是有时网页中的表格复制到Word中&#xff0c;表格的边框线全没了&#xff0c;怎么办呢?那么下面就由学习啦小编给大家分享下把网页表格复制到word的技巧&#xff0c;希望能帮助到…

设置maven 参数调休_IDEA 使用 Maven构建Spark项目

上一篇讲了普通构建spark项目 这次分享用Maven构建Spark项目&#xff0c;中间遇到了很多坑&#xff01;其根本原因是Scala 与 Spark的版本不一致&#xff01;本次环境&#xff1a;Java1.8Scala 2.11.8Spark spark-2.1.0-bin-hadoop2.6.tgz 新建Maven项目图1.选择顺序图2.随便写…