git 实用命令

 

git 回退本地提交:

git reset head^

  

git 删除本地分支

git branch -D 分支名称

  

git 删除远程分支

git push origin --delete 远程分支名称

  

# 新建远程分支(先创建本地分支)

1. 创建本地分支

git branch 分支名称
例如: git branch branch22.03.12

  

2. 创建远程分支

git push origin 远程分支名称
例如: 
git push origin branch22.04.12

  

3. 本地分支关联远程分支

git branch --set-upstream-to=origin/远程分支名称  本地分支名称
例如:
git branch --set-upstream-to=origin/branch22.05.15  branch22.05.15

  

4. 从远程分支拉取一条本地不存在的分支

git checkout -b 本地分支名称 origin/远程分支名称
git checkout -b branch22.06.23   origin/branch22.06.23

  如果拉取不成功, 需要先执行命令

  git fetch

       然后再执行: git checkout -b 本地分支名称 origin/远程分支名称

 

5. 合并分支

  一个分支上的提交可以合并到另一个分支

  命令: git merge 分支名称

  例如:dev01 分支合并到master主分支

  步骤:a.先切换到master分支上

       b. 执行命令: git merge dev01

 

解决冲突:

 

 

 

 

 

 

6. 撤销命令:

1. 使用git log 命令查看commit提交的历史 

2. git reset --hard d7aaf3cfbe95013378ed8cd4d88b5f2478e0083c (输入你自己要撤回的版本号)
   撤回到该版本号时,往后新增/修改的代码都会消失

3. git reset d7aaf3cfbe95013378ed8cd4d88b5f2478e00844 (需要恢复到的版本号) 
  恢复到 d7aaf3cfbe95013378ed8cd4d88b5f2478e00844 时提交的  add . 状态但是之后 新增/修改 的代码还在,你可以对之后新增/修改的代码进行再次修改

4. 通过git push origin master --force强制提交当前版本号,以达到撤销版本号的目的: matser是你的分支名,必须添加参数force进行强制提交,否则会提交失败。

 

  

7. git 提交指定文件

git提交指定文件,如果此时修改了其他代码,可先提交指定代码,然后忽略不想提交的代码,最后push之后,恢复之前忽略的代码

7.1、 查看仓库状态

git status 

  

7.2 、 添加需要提交的指定文件路径 + 文件名(加路径--参考git status 打印出来的文件路径)

git add src/java/com/nets/web/controller/MybatisController.java

  

7.3、忽略其他文件,把现修改的隐藏起来,这样提交的时候就不会提交未被add的文件, 这一步必须要做

git stash -u -k 

  

7.4、提交文件到暂存区

git commit -m "卡片名"

  

7.5、拉取合并

git pull 

  

7.6、推送到远程仓库

git push 

  

7.7、恢复之前忽略的文件

git stash pop 

  

 

 

 

 

 

git常使用的命令
1、git init —在当前目录新建一个代码库。
2、 git config user.name=””git config user.email=””—设置代码提交时候的信息。
3、 git clone 需要clone 远程地址 ––从服务器端克隆项目到本地
4、 git status —查看文件修改状态。
5、 git diff 文件路径 ––查看该文件与上次提交修改代码的差别。
6、 git diff –-cached 文件路径 ––查看本地缓冲和上次提交的差别。
7、 git checkout –b 分支名称 ––新建一个临时分支。
8、 git checkout 分支名称 ––切换分支。
9、 git branch —查看所有的分支。
10、 git branch –D temp —强制删除一个分支
11、 git pull —将服务端代码更新到本地。
12、 git add 文件路径 —提交文件到暂冲区。
13、 git add –A —提交所有的需要add 的文件到缓冲区。
14、 git commit –m ‘提交说明’—将缓冲区的文件提交到本地库中。提交说明尽量将提交内容简单明了的表达清楚。
15、 git push origin master —将已经提交到本地的仓库的代码push到远程服务器。
16、 git log —显示提交的日志。
17、 git show [commit 的Id] — 显示某次提交的元数据和内容变化。
18、 git show [commit Id] –-stat —-显示提交的文件名称
19、 git checkout —恢复暂存区的所有文件。
20、 git reset [file/commit ID] – 重置暂存区的指定文件。用来撤销git commit
21、 git reset –hard [commit 的Id] —将本地版本退回到提交之前的版本。这个操作会将自己新写的代码全部撤销没了。
22、 git cherry-pick temp —-合并临时分支到当前分支。
23、 git commit –amend —修改最近一次提交说明的内容同时可以合并提交。对已经Push 的无效。
24、git rm <删除的本地仓库中文件路径(前提已经提交到远程仓库)> git commit -m “delete file” 分两步执行,可以删除远程仓库对应的文件

提交步骤
首先你先通过git init git clone 基本环境准备好后,你写完自己的代码想要提交到远程服务器。
git status 查看改动的文件有哪些
分别git diff 改动文件路径 看看有没有空格之类。检查格式,改动具体代码
确认无误后 git add 需要提交的文件路径 也可以加入改动的都是需要提交可以git add .
git pull
git commit -m “提交备注” 切记commit 之前 先git pull
git push origin master

提交完成

 

安装

对于Windows和Mac OS

为此,请继续到git-scm下载站点,然后继续下载特定于您的操作系统的可执行文件。 单击下载的安装程序文件以在您的计算机上安装git。

现在,您已经安装了git,可以使用git –version检查是否正确安装:

 

 

 

注意 :对于本教程,我将使用终端来演示所有git命令。 因此,如果您使用的是Windows操作系统,请使用git安装随附的bash命令提示符,并在Mac或Linux上使用普通终端。

像现在一样,我们可以从命令提示符/终端获得git可执行文件来执行git命令。

Git可执行文件具有以下基本格式:

git <command> <switch-options/command-options> <sub-command> <more-sub-command-options>

  

执行Git全局用户配置

使用命令 :git config

安装后的第一步是进行用户配置,即设置名称和电子邮件ID,以便git在进行提交时可以识别,这基本上增加了每个提交的所有权。

执行以下命令:

git config --global user.name <your-name>
git config --global user.email <your-email>

  

创建Git存储库

使用命令 :git init

要使用git跟踪文件,首先需要首先创建git存储库。 让我们创建hello-git目录并在其中初始化git存储库。

mkdir hello-git
cd hello-git
git init

  

 

 

 初始化后,您会看到消息如上面的屏幕快照所示,显示了已初始化git存储库,并且如果您检出了' hello-git'目录,则会注意到已创建' .git '目录。 这是git运行的目录。

 

 

 

 

创建文件并将其添加到git

使用的命令 :git add,git commit,git status

现在,让我们向我们新创建的git项目中添加一些文件。

 

 

 

我已经将hello.jsREADME.md文件添加到项目目录中,现在让我们看看git告诉我们有关项目目录状态的信息。

git status –此命令使您可以查看git项目目录中文件的状态。

 

 

 

Git文件状态

正如我们从一开始就讨论的那样,git会跟踪git初始化目录的更改。 因此,当使用git时,filles进入少数状态,其解释如下:

  • 未跟踪的文件 :这是一种新添加到Directroy的文件,并且git不会对其进行版本控制跟踪
  • 跟踪的文件 :这是有意提交给git的文件,但未暂存或未添加到索引区域
  • 暂存/索引文件 :这些是要添加到下一次提交的文件。
  • 已修改/未暂存的文件 :这些是已修改但未暂存的文件

  

如您所见,我们的两个文件都是未跟踪的,这意味着我们尚未告诉git来跟踪我们的文件。 为了说明这一点,我们将使用git add命令。

git添加 将未跟踪或未暂存的文件添加到git的暂存/索引区域。

Adding specific files :
git add <file-1> <file-2>
 
Adding all files in directory and sub-directories :
git add .
or
git add --all

  对于我们的情况,我将添加所有文件:

 

 

如您所见,文件已添加到暂存区。 现在,我们需要将文件提交到git仓库,为此我们使用git commit 。

git commit :简单来说,此命令首先做两件事,它将文件添加到git存储库,并根据您提供的提交消息制作提交日志。

git commit -m “<your message>”

  

对于我们的情况:

git commit -m "Initial commit for project, added hello.js and README.md"

  

 

 

现在,执行完此操作后,您将看到所做的更改已提交到git存储库。

现在,如果执行git status ,将看不到任何要提交的更改,这意味着我们的工作目录更改由git记录:

 

 

git log:这可以让您查看较早的提交,在此您可以看到提交哈希,作者姓名,提交日期和提交消息。

 

 

要查看更紧凑的提交消息,请使用 git log --oneline switch on log命令,如下所示:

 

 

 

对文件进行更多更改

使用的命令 :git diff,git add和git commit

让我们对存储库中的文件进行更多更改,并了解更多git命令。 现在,让我们向hello.js和README.md添加几行,在您喜欢的编辑器中打开此文件,并向其中添加几行。 我在文件中添加了几行,您可以看到以下内容:

 

 

 

 

现在,如果您执行git status:

 

 

 

与以前的未跟踪文件相比,您可以看到文件已被跟踪但未暂存以提交。 现在,在中间更改文件中,您可能想要查看自上次上演以来发生的更改。

git diff :它显示自从上次提交目录中每个文件以来在工作目录中所做更改之间的代码差异。

git diff <options> <file-name>

  

如果仅执行git diff,而不指定所有文件的文件名,则:

 

 

如果按如下所示指定文件名,则仅显示该特定文件的差异:

 

 

您可以看到以+开头的浅绿色的行,指示这些行是自上次提交以来添加的。

让我们使用git add命令将文件添加到临时区域:

git add .

  

现在,如果对存储库执行diff,您将看不到任何内容,因为默认情况下diff命令显示未暂存文件之间的差异。

要查看已暂存的文件的差异文件,您必须执行以下操作:

git diff --cached

  

 

 

要获取更多信息,请使用–stat ,它提供有关更改哪些文件的更多信息。 看下图:

 

 

 

 

posted @ 2022-04-17 20:59  IT6889  阅读(52)  评论(0编辑  收藏  举报