git 笔记记录

下面是本人在工作中学习到且使用到的git的用法,现在记录下来。

git命令记录,并不解析。


目录

一、git 上传流程

二、git 上传流程2 

三、其他重点记录

四、git 标签

五、git 常用命令

①常用命令

②分支

③其他

六、本地代码初始化生成本地仓库后关联远端仓库并推送


一、git 上传流程

1.克隆项目

git clone git@192.168.0.0:xxx/robot/20/robot20.git

cd 进入文件夹

2.创建本地分支,并切换到该分支,并关联远程仓库分支

git checkout -b 本地分支 远程仓库分支

例如:创建本地develop分支,并关联远程仓库develop分支

git checkout -b develop origin/develop

之后可以使用 git branch -a 查看分支

注意:一般我们都会创建一个develop分支,并在此分支进行修改代码,然后再push上传到git中;我们都约定不会在master分支上进行修改代码和push等操作!(当然,也可以再创建一个分支关联远程仓库的develop分支,并在此分支修改代码,修改完毕后,合并到本地的develop分支,最后再切换到本地的develop分支进行push上传到git中。)

3.将修改的文件添加到本地仓库

可使用 git status 查看哪些文件被修改了

git add 文件名
git commit -m "注释"

4.同步项目代码

git pull

5.提交到远程仓库

git push

附:

分支概念理解

每个git仓库都会有一个主分支master,一般规定都不会在这个主分支中进行修改项目代码;所以我们得新建分支,在新建的分支上进行修改代码,因为新建的分支都是master的子分支,所以他们的资源是共享的。在新建分支上所做的修改操作都不会影响主分支。子分支修改完毕并commit到仓库后,即可切换到主分支,使用git pull同步。

关联概念理解

关联即将本地的分支与远程仓库的分支进行关联。公司的项目都需要将本地的分支和远程仓库的分支进行关联;关联后,就可以很方便的使用git pull同步代码,和使用git push上传代码了。

二、git 上传流程2 

场景:现有三个分支,master - develop - dev_tem

master 和 develop 不做修改,develop负责提交,dev_tem负责修改代码;

现有需求,将dev_tem中修改的代码提交到本地仓库后,将deve_tem合并到develop,再同步远程仓库,再提交远程仓库。

流程:

  1. 在dev_tem分支将所修改的代码commit提交到本地仓库

    git add 文件名
    git commit -m "注释"
  2. 暂存当前的修改(如有需要)

    git stash save '备注' 
  3. 切换至develop分支

    git checkout develop
  4. 将dev_tem分支合并到develop分支

    git merge dev_tem
  5. 同步远程仓库代码到develop

    git pull
  6. 将本地仓库提交的修改上传至远程仓库

    git push
  7. 切换dev_tem分支

    git checkout dev_tem
  8. 恢复之前的修改(如有需要)

    git stash pop
  9. 将develop分支合并到当前分支

    git merge develop

    这样做了之后,master - develop - dev_tem 三个分支都是在同一起跑线;

    三个分支的代码都是同步了的!(这里可以把master忽略掉)

三、其他重点记录

  1. 关联远端仓库

    git branch --set-upstream-to=origin/远端分支 本地分支
  2. push代码时没反应,可以使用如下命令

    git push origin 本地分支:远端分支
  3. 忽略文件

    git update-index --assume-unchanged 文件路径
    git reset HEAD 文件路径
    ​
    例:
    git update-index --assume-unchanged ../build/
    git reset HEAD ../build/
  4. 放弃某一文件的修改

    git checkout -- 文件名
    ​
    # 放弃所有文件的修改
    git checkout ..
  5. 删除误commit的文件

    git rm --cached 文件名
    git rm --cached -r 文件夹名
    ​
    git commit --amend --allow-empty
  6. 文件commit后又有修改,将文件添加到commit中,不创建两个commit

    # 会把暂存区的文件自动加入。
    git commit --amend
    # 可以使用-a把工作区的文件也一起加入。
    git commit --amend -a
    ​
    # 会弹出窗口修改comment,当然也可以使用"-m"参数指定comment。
  7. 查看冲突命令

    git mergetool   
    # 中文会乱码;有三个窗口:A区(LOCAL)是本地分支的修改;B区(BASE)是A和C的综合,需要将A和C的修改添加到B区;C区(REMOTE)是远程仓库的修改;
    # 如果A和C都修改到同一行,则复制粘贴顺序添加到B区就好;最后记得保存!!!
  8. 本地开发分支推送远端分支

    git push origin 本地分支名:远端分支名
    # 远端分支名可以随便写,会自动创建,建议与本地分支名一致
  9. 拉取远端仓库某一分支

    git checkout -b 本地分支名 origin/远端分支名
    # 本地分支名推荐与远端分支一样
    # git checkout -b gy5a origin/gy5a
  10. 拉取远端分支最新代码

    git pull origin 本地分支名

四、git 标签

  1. 查看所有标签

    git tag
  2. 查看标签的提交信息

    git show 标签名
  3. 在提交历史中查看标签

    git log --oneline --graph
  4. 创建本地附注标签

    git tag -a 标签名称 提交版本号 -m 附注信息
    案例:
    git tag -a xxx-V1.0-release 2c0c390 -m "xxx项目版本发布,正式版本:V2.27.014.002"
  5. 查看标签的提交信息

    git show 标签名
  6. 删除标签

    git tag -d 标签名称
  7. 检出标签

    # 理解:在此标签对应的提交版本中,新建一个分支;然后就可以在当初的这个版本中继续做开发或者查看代码。
    ​
    git checkout -b 分支名称 标签名称

五、git 常用命令

①常用命令

1.创建本地git仓库

git init

2.提交文件到临时存储区

git add 文件名  或  git add 文件夹名  或  git add .   // 添加全部

3.将临时存储区中的文件提交到本地仓库中

git commit -m "注释"

4.查看提交记录

git log    或    git log --pretty=oneline

5.回退版本

  • 回退到上一个版本:git reset --hard HEAD^
  • 回退到上上一个版本:git reset --hard HEAD^^
  • 回退到前100个版本:git reset --hard HEAD~100

6.回退后又后悔了

回退到指定的版本:`git reset --hard  "id"`   (id 写前几位即可,git log 可以查看对应的id)

7.查看历史命令

git reflog   (也可以查看id)

8.查看当前工作状态

git status

9.查看工作区和版本库里面最新版本的区别:

git diff HEAD -- 文件名

10.让修改的文件撤销回到最近一次git commitgit add时的状态

git checkout -- 文件名 

(如果本地文件被删除了,也可以使用这条命令恢复库中的文件)

11.把暂存区的修改撤销掉,重新放回工作区

git reset HEAD 文件名

12.本地文件删除了,删除git本地仓库中的文件

rm  -fr 文件名
git  rm   文件名
git  commit  -m  "注释"

②分支

1.创建分支

git branch dev

2.创建dev分支,然后切换到dev分支

git checkout -b dev

或者

git branch dev      // 创建dev分支
git checkout dev    // 切换到dev分支

3.列出所有分支,当前分支前面会标一个*

git  branch

4.列出所有分支,包括远程分支

git  branch -a

5.合并指定分支到当前分支

git merge 分支名

(将分支名指定的分支合并到当前分支)

6.删除分支

git branch -d 分支名

7.新版git切换分支switch

创建dev分支,然后切换到dev分支

git switch -c dev

8.直接切换到已有的master分支

git switch master

③其他

1.查看已经绑定的

git remote -v

2.查看本地分支与远程仓库有哪些绑定

git branch -vv

3.将本地分支与远程仓库分支关联

git branch --set-upstream-to=远程分支 本地分支

git branch --set-upstream-to=origin/develop develop

4.保存当前工作进度

会把暂存区和工作区的改动保存起来。执行完这个命令后,在运行git status命令,就会发现当前是一个干净的工作区,没有任何改动

git stash save '备注' 

如果想要恢复,则使用 git pop 恢复原先修改的内容

5.查看当前保存的所有stash列表

git stash list

6.将某个stash的变更应用到当前工作目录,不删除保存的stash

git stash apply

7.将某个stash的变更应用到当前工作目录,删除保存的stash

git stash pop

8.删除某个stash

从stash列表中移除。如果不指定stash,默认会删除最新的stash。

git stash drop [stash]
git stash drop stash@{0}

9.删除所有的stash

git stash clear

10.恢复某个stash

git stash pop stash@{1}

11.创建一个分支,并关联远程仓库分支

git checkout -b develop origin/develop

12.清除

当切换其他分支而报错时,有可能是当前分支有些文件被修改了但没有commit上传,可使用如下命令删除掉,使用需谨慎!

git clean -d -fx

...后续还遇到新的命令再记录下来。

六、本地代码初始化生成本地仓库后关联远端仓库并推送

  1. 生成密钥

    ssh-keygen

    密钥路径:C:\Users\17634.ssh .pub文件

  2. 将密钥添加到github仓库
    参考:SSH 公钥设置 | Gitee 帮助中心

  3. 新建本地仓库后代码推送本地仓库

    git init
    git add .
    git commit -m "第一次推送代码"
  4. 关联远端仓库

    git remote add origin 远程仓库URL
  5. 代码推送

    git push -u origin master
    # 可能会报错,没关系,接着下面操作即可
  6. 代码拉取

    git pull origin master
    # 可能会报错,没关系,接着下面操作即可
  7. 使用rebase命令将本地和远程仓库同步

    git pull --rebase origin master
  8. 代码推送

    git push --set-upstream origin master

完!

### Git 使用教程与学习笔记整理 Git 是一个分布式版本控制系统,广泛应用于软件开发中的代码管理和团队协作。以下是关于 Git 的使用教程和学习笔记的总结,涵盖基础命令、安装方法及常用操作。 #### 1. Git 安装方法 在不同的操作系统下,Git 提供了多种安装方式: - **Linux 系统**:可以通过包管理器安装,例如在基于 Debian 的系统上使用以下命令: ```bash sudo apt-get install git ``` 如果需要从源码编译安装,则可以依次执行 `./config`、`make` 和 `sudo make install` [^2]。 - **Windows 系统**:推荐使用官方提供的安装包进行安装。此外,已安装 Git 的用户可通过以下命令更新到最新版本: ```bash git update-git-for-windows ``` #### 2. 基础命令 Git 提供了一系列命令用于日常的版本控制操作: - **初始化仓库**: ```bash git init ``` 该命令用于创建一个新的 Git 仓库。 - **克隆远程仓库**: ```bash git clone <仓库地址> ``` 克隆现有仓库到本地,便于后续开发和修改 [^3]。 - **查看状态**: ```bash git status ``` 显示当前工作目录的状态,包括哪些文件已被修改但尚未提交。 - **添加文件至暂存区**: ```bash git add <文件名> ``` 将指定文件添加到暂存区,准备提交。若要添加所有文件,可使用 `git add .` [^3]。 - **提交更改**: ```bash git commit -m "提交信息" ``` 将暂存区的内容提交到本地仓库,并附带一条描述性的信息 [^3]。 - **推送更改至远程仓库**: ```bash git push origin <分支名> ``` 将本地提交的更改推送到远程仓库的指定分支上 [^3]。 - **拉取远程更改**: ```bash git pull origin <分支名> ``` 从远程仓库获取最新的更改并合并到本地分支中。 #### 3. 分支管理 分支管理是 Git 的核心功能之一,允许开发者在同一项目上并行开发多个特性或修复 bug。 - **查看分支**: ```bash git branch -v ``` 列出所有本地分支及其最新的提交记录 [^3]。 - **创建新分支**: ```bash git branch <分支名> ``` 创建一个新的分支,但不会自动切换到该分支 [^3]。 - **切换分支**: ```bash git checkout <分支名> ``` 切换到指定的分支,以便在该分支上进行开发 [^3]。 - **创建并切换分支**: ```bash git checkout -b <分支名> ``` 一次性完成创建新分支并切换的操作 [^3]。 - **合并分支**: ```bash git merge <分支名> ``` 将指定分支的内容合并到当前分支中 [^3]。 - **删除分支**: ```bash git branch -d <分支名> ``` 删除不再需要的分支 [^3]。 #### 4. 远程仓库操作 远程仓库通常用于团队协作,确保所有成员都能访问相同的代码库。 - **添加远程仓库**: ```bash git remote add origin <远程仓库地址> ``` 将远程仓库与本地仓库关联起来 [^3]。 - **查看远程仓库信息**: ```bash git remote -v ``` 显示所有远程仓库的详细信息 。 - **推送本地分支到远程仓库**: ```bash git push -u origin <分支名> ``` 将本地分支推送到远程仓库,并设置为默认跟踪分支 [^3]。 #### 5. 日常开发流程 在实际开发过程中,建议遵循以下步骤以保持良好的版本控制习惯: 1. 拉取远程仓库的最新代码: ```bash git pull origin main ``` 2. 添加所有修改的文件到暂存区: ```bash git add . ``` 3. 提交更改并附带清晰的提交信息: ```bash git commit -m "描述本次提交的内容" ``` 4. 推送更改到远程仓库: ```bash git push origin main ``` 通过以上流程,可以有效地管理项目的版本历史,并与其他开发者协同工作。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cpp_learners

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值