GIT快速上手(常用指令)

1. 修改用户信息

git config --global user.name nnnnnnnn

git config --global user.email mmmmmmmm@qq.com

注:填写自己实际的用户名(nnnnnnnn )和邮箱(mmmmmmmm@qq.com)

2. 生成SSH公钥

命令:ssh-keygen -t rsa -b 4096 -C "mmmmmmmm@qq.com"

生成的秘钥文件路径一般位于:

将秘钥文件(id_rsa.pub)内容拷贝出来,复制到平台的SSH公钥一栏【Gitee、Gitcode等代码托管平台都会有这么一栏】。

3. 拉取一个新的本地分支

A. 首先更新所有远端分支内容:git pull 或者 git fetch 或git fetch origin,这些指令区别如下:

|------------------|--------|--------|---------------|
| 命令 | 是否下载数据 | 是否自动合并 | 作用范围 |
| git fetch | 是 | 否 | 所有远程仓库 |
| git fetch origin | 是 | 否 | 仅 origin 远程仓库 |
| git pull | 是 | 是 | 默认当前分支的远程跟踪分支 |

合并本地分支,解决冲突:一般是新建一个目录同步,减少出错,好同步;或者是根据冲突内容进行删减(GIT会有标记,哪部分代码存在冲突,编译源代码会出错)。

git branch -a:查看所有分支,包括本地分支,远端仓库分支

B. 拉出一个本地分支

方式1:重命名本地分支名

命令格式:git checkout -b xxxxx(本地分支名) remotes/origin/xxx

指令示例:

cpp 复制代码
git branch -a

git checkout -b master_v1.1.1_0731 remotes/origin/master_v1.1.1 //拉分支

git branch -a //查看所有分支(确认是否拉取成功)

从远端分支remotes/origin/xxx 拉出一个本地分支版本,命名为xxxxx(本地分支名);成功拉取后,当前工作区间就位于这个本地分支上,如下图:

方式2:名称一致

也可以直接checkout出跟远端分支名一样的本地分支;但是要注意代码提交push的时候,指令有所区别。

注:方式1常用。

4. 代码提交

I. 如果本地分支名跟远端分支名不同:

命令格式为:git push origin 本地分支名:远端分支名

II. 如果拉出来的本地分支名跟远端分支名相同:

命令格式:直接 git push origin 本地分支名

5. 常用指令

(1) git 更新gitignore无效如何解决

重新编辑.gitignore之后,要从暂存区中删除之前被跟踪的文件:

指令是:git rm --cached -f xxxx

示例:

cpp 复制代码
git rm --cached -f cpu/wl82/tools/sdk.elf.0.0.preopt.bc

git add . //把rm这个操作也提交一次,之后文件才不会被跟踪

git commit -m "xxxx"

(2) 提交指令

cpp 复制代码
git add . //添加所有文件到暂存区

git add xxx //只添加xxx文件

git commit -m "标签"

(3) 查看提交历史

cpp 复制代码
git log //查看所有的历史提交

git log -10 //只查看最新的10条提交

git show + commit id //只查看这一条(commit id)修改

tig:增强型输出log

(4) 保存暂存区的修改

/* 这种方式在同步远端代码仓库的时候常用 */

I. git add + git stash 两条指令组合: 备份暂存区

II. git stash pop: 取出第一条备份。

相关推荐
摇滚侠2 小时前
MAC IDEA GIT 提交区显示了几个不存在的目录
git·idea
城东3 小时前
Git使用[远程仓库远端的head比本地和提交的head旧,其他人拉不到最新代码]
git·head·远程仓库远端·比本地和提交的head旧·其他人拉不到最新代码
何中应12 小时前
使用SSH地址拉取远程仓库代码报下面的错误
git
何中应12 小时前
Git本地仓库命令补充
git
sun00770014 小时前
执行repo sync -c -d -j4以后,提交未git push的代码看不到了。要怎么恢复?
git
胖虎116 小时前
Git 一个本地仓库同时推送到两个远程仓库(详细教程)
git·多远程仓库·双远程仓库·git双远程·git备份
春日见1 天前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
stevenzqzq2 天前
git 常用操作
大数据·git
Curvatureflight2 天前
Git工作流最佳实践:从混乱到优雅
git
wu~9702 天前
GitHub永不遗忘,使用git push -f来覆盖的提交依旧保留
git·github