git常用快捷指令

git代码仓库管理工具

1.初始化本地仓库

a) Git init <directory>

 

2.克隆一个远程仓库

a) Git clone 仓库名

eggit clone git@github.asdf.com:edadd/FE-AApppon.git

 

3.添加文件到暂存区

a) Git add . 全部提交

 

4.提交变更

a) Git commit -m ‘备注’

eg: git commit -m ‘U标准化-xxl’

 

5.拉取远程分支到本地

a) Git pull origin <branch>不加分支则默认为拉取当前分支的远程仓库

eg: git pull origin dev-ui拉取远程的dev-ui分支合并到我的当前分支

此操作建议多使用为了让我们自己的分支和远程目标分支的一致避免线上冲突污染远程分支有冲突也可以本地处理

 

6.推送变更到远程仓库

a) Git push origin <branch>不加分支则默认为推送到当前分支的远程仓库

eg: git push origin dev-ui推送当前分支的变更到远程仓库的dev-ui分支

 

7.创建本地分支

a) Git branch <branch>

eg: git branch dev-ui-xxl创建一个dev-ui-xxl的本地分支

创建的本地分支的代码是以当前分支为模版创建的建议创建本地分支时可以将 代码分支切换到master拉取最新代码后在创建所需分支这样保证代码是最 新的

 

8.切换本地分支

a) Git checkout <branch>

eg: git checkout dev-ui-xxl切换到dev-ui-xxl的本地分支

可以用git checkout -b dev-ui-xxl 直接创建并切换到新分支

 

9.删除本地分支

a) Git branch -d <branch>

eg: git branch -d dev-ui-xxl删除本地的dev-ui-xxl分支d改成D就是强制删除

eg: git branch -d -r origin/dev(删除本地远程dev分支,仅改变本地仓库,不影响远程仓库,使用git fetch又会还原)

 

10.删除远程分支不建议新手使用

a) Git push origin --delete <branch>

eg: git push origin --delete dev-ui-xxl删除远程的dev-ui-xxl分支本地的不影响

eg: git push origin :dev(删除远程仓库dev分支,不影响本地,注意origin后的空格和冒号)

 

11.合并本地分支

a) Git merge <branch>

eg: git merge dev-ui-xxl合并本地的dev-ui-xxl分支到当前分支

 

12.暂存本地变更

a) Git stash

eg: git stash将当前分支的变更存储到临时仓库

配合git stash pop使用比如我当前分支在调试不想上到远程去这个时候来 了一个临时变更我需要切换到那个分支进行开发和提交但是由于当前分支存在 未提交的代码git checkout无法切换这个时候就可以用git stash将当前分支 的变更存储到临时仓库等那个分支开发完成回到当前分支并使用git stash pop 就可以找回当前分支临时存储的代码

 

13.释放暂存本地变更

a) Git stash pop

eg: git stash pop释放暂存的本地变更搭配git stash使用

 

14.拉取全部远程仓库变更

a) Git fetch

eg: git fetch拉取远程仓库的全部变更

 

15.查看存储库的状态

a) Git status

eg: git status查看当前分支的存储状态

 

 

16.查看分支列表

a) Git branch

eg: git branch查看当前本地仓库的分支列表

eg: git branch -r(查看当前远程仓库的分支列表)

eg: git branch -a(查看当前本地和远程仓库的分支列表)

 

 

17.查看提交历史日志

b) Git log

eg: git log查看当前分支的历史提交记录

 

18.回退到指定版本

a) Git reset --hard <commit id>

eg: git reset --hard 9e658693e47790a7577e43dce4ea0b30d87e4b5

commit id可以用git log去查找

 

19.变基

a) Git rebase <branch to rebase from>

eg: git rebase origin/master依据master分支进行变基

 

 

出处:https://www.cnblogs.com/loong1314/p/16971461.html

=======================================================================================

Git分布式版本控制器常用命令和使用 

前言:

  使用Git版本控制器差不多有一年多的时间了,在这一年多的时间里对这个传说的的分布式版本控制工具有了一定的了解。在实战项目开发中,对关于如何在通过Git提交项目,以及如何使用Git命令对提交的文件进行撤销,回退/还原,删除等相关操作有了一定的了解。以下主要是我在工作,学习中对自己使用Git的一些总结。

Git安装教程(Windows安装超详细教程):

参考博客地址(该篇博客解释的非常详情,大家可以对照着进行安装):

https://www.jianshu.com/p/414ccd423efc

Git文件的四种状态:

未跟踪(untrack):未追踪,表示文件为新增加的

已修改(modified):表示修改了文件,但还没保存到git仓库中

已暂存(staged):表示修改的文件提交到了暂存区,但是还没有提交到本地Git版本库

已提交(committed):表示数据安全提交到了本地Git版本库

Git工作的四个区域:

Working Directory(工作目录):即正在编辑的文件状态。文件状态为未跟踪(untrack)和已修改(modified)在此区域内

Staging Area(暂存区):保存了下次将提交的文件列表信息。文件状态为已暂存(staged)在此区域内

Repository(本地仓库):提交到本地仓库的文件

Repository(远程仓库):已提交到远程计算机内的文件

提交流程为:工作区》暂存区》本地版本库》远程版本库

多个Git账号的登录与切换:

在Git Bash Here的控制台里输入:

1
2
3
4
5
6
git config --global user.name "你的名称"
git config --global user.email "你的邮箱"
 
切换完成后,查看对应的账号:
git config user.name
输出账号名称:YSGStudyHards

详情参考博客:https://blog.csdn.net/qq_36602939/article/details/79794686 

查看Git项目远程仓库地址:

1
git remote -v

查看用户名和邮箱地址:

1
2
3
4
//查看用户名
git config user.name
//查看邮箱地址
git config user.email 

拷贝一个Git仓库到本地:

1
git clone

开发环境中Git完整提交步骤:

首拉取服务器代码:

注意:提交代码之前,需先从服务器上面拉取代码,以防覆盖别人代码!

1
git pull 

查看当前工作目录树的工作修改状态(这个命令在git中使用最频繁了,原因会告诉你下一步该做的事情):

1
git status  

将工作区修改添加的文件提交到暂存区:

1
2
3
4
5
git add + 文件
 
git add -u + 路径:将修改过的被跟踪代码提交缓存
 
git add -A + 路径: 将修改过的未被跟踪的代码提交至缓存  

将暂存区代码提交到本地仓库中:

1
git commit -m “功能修改,这里是注释”   

将代码推送到服务器(主分支):

1
git push origin master  

Git提交过程遇到问题:

误将代码提交到暂存区中(git add):

解决办法:利用 git reset 命令将撤回缓存中的代码。

误将暂存区代码提交到本地仓库(git commit):

解决办法:

git reset —soft + 版本号

回退到某个版本,只回退了commit的信息,不会改变已经修改过的代码。

git reset —hard + 版本号

彻底回退到某个版本,本地的代码也会改变上一个版本内容

git pull和git fetch的用法及区别:

git pull (拉取):

  是拉取远程分支更新到本地代码库的操作,比如远程仓库的学习资料有更新,需要把新的内容下载下来,可以使用git pull 是相当于从远程仓库获取最新版本,然后再与本地分支merge(合并)!

git fetch (提取):

  理解 fetch 的关键, 是理解 FETCH_HEAD,FETCH_HEAD指的是: 某个branch在服务器上的最新状态’。这个列表保存在 .Git/FETCH_HEAD 文件中, 其中每一行对应于远程服务器的一个分支。

当前分支指向的FETCH_HEAD, 就是这个文件第一行对应的那个分支,使用git fetch获取远程仓库最新代码,但是不会自动合并(merge),git fetch更安全一些,因为在merge(合并)前,我们可以查看更新情况,然后再决定是否合并。

Git撤销,回退/还原,删除操作:

 Git取消从工作区提交到暂存区的文件追踪:

1
2
3
4
5
6
7
8
9
在使用git的时候,有些文件是不需要上传的,所以就可以修改
例如:
如果是对所有文件都取消跟踪的话,就是
git rm -r --cached .   //不删除本地文件
git rm -r --f .   //删除本地文件【不推荐使用,因为会把本地的文件也给删除了】
  
对某个文件取消跟踪
git rm --cached readme1.txt    //删除readme1.txt的跟踪,并保留在本地(推荐使用)
git rm --f readme1.txt    //删除readme1.txt的跟踪,并且删除本地文件。

工作区于暂存区之间的提交回退操作:

1
2
3
4
5
6
7
8
9
10
11
12
13
# 添加指定文件到暂存区
git add [file1] [file2] ...
# 添加指定目录到暂存区,包括子目录
git add [dir]
# 添加当前目录的所有文件到暂存区
git add .
#当我们需要删除暂存区或分支上的文件, 同时工作区也不需要这个文件了, 可以使用
git rm file_path
#当我们需要删除暂存区或分支上的文件, 但本地又需要使用, 这个时候直接push那边这个文件就没有,如果push之前重新add那么还是会有。
git rm --cached file_path(文件名称,ysg.txt)
#直接加文件名   从暂存区将文件恢复到工作区,如果工作区已经有该文件,则会选择覆盖
#加了【分支名】 +文件名  则表示从分支名为所写的分支名中拉取文件 并覆盖工作区里的文件
git checkout

版本库回退到工作区:  

1
2
3
4
5
【这里操作是已经提交了在本地代码库的操作】
#去掉上一次的提交(会直接变成add之前状态,即取消追踪)  
git reset HEAD^
#去掉上一次的提交(变成add之后,commit之前状态)
git reset --soft  HEAD^  

查看提交历史:

1
2
3
4
git log                         # 查看提交历史
git log -p <file>               # 查看指定文件的提交历史
git blame <file>                # 以列表方式查看指定文件的提交历史
git log --oneline               # 查看提交日志,并且只显示第一行

合并与衍合:

1
2
3
4
git merge <branch>               # 合并指定分支到当前分支
git merge --abort                # 取消当前合并,重建合并前状态
git merge dev -Xtheirs           # 以合并dev分支到当前分支,有冲突则以dev分支为准
git rebase <branch>              # 衍合指定分支到当前分支  

Git拉取时设置拉取深度:

1
git clone --depth=1 git@github.com:xxx.git

Git查看分支查看:

1
2
3
4
git branch -vv 查看当前开发分支
git branch  查看本地所有分支
git branch -r  查看远程所有分支
git branch -a  查看本地和远程所有分支

 

 出处:https://www.cnblogs.com/Can-daydayup/p/10134733.html

posted on 2023-04-20 16:12  jack_Meng  阅读(221)  评论(0编辑  收藏  举报

导航