git操作

Git 修改commit提交信息

一、commit到本地版本库

修改最近一次提交的commit

     1、命令行执行:git commit --amend,git commit –amend既可以对上次提交的内容进行修改,也可以修改提交说明

     2、利用vim语法,点击i进入编辑模式,修改对应文本内容

     3、点击Esc退出编辑模式

     4、按键:wq强制退出

二、push到远程之后(也适用于本地commit且未push到远端)

     1、git log获取历史提交信息

     2、2. git rebase -i HEAD~6,这里的6是指展示最近6次push

  3、找到需要修改添加提交信息的push,讲其最前面的pick 修改为edit, 然后执行按ESC退出编辑,再执行 :wq 退出 

 4、执行git commit --amend,按照commit到本地版本库的方式修改即可

     5、git rebase --continue

     6、push到远程:git push origin <your branch nama> -f

 
1.origin

源仓库,一般为git clone的仓库,如bannidaer/fastjson,克隆后默认提交和拉取的地址

2.upstream

为上游仓库,一般为origin fork 的仓库,如alibaba/fastjson

添加上游仓库:
    git remote add upstream https://code.xxuu.com.cn/kmcdn/cloud-custom-operator.git
    

3.git tag相关操作


https://blog.csdn.net/jiaofeng_hou/article/details/78793854
创建git tag,根据某个tag创建分支
    https://www.cnblogs.com/shujiying/p/14261327.html

4.git 忽略本地的commit,强行拉取

git fetch --all
git reset --hard origin
git pull


git checkout -b feature/v1.0-operational    在当前分支基础上新增一个分支 feature/v1.0-operational
git checkout .  忽略本地的改动
git branch        查看当前是在哪个分支上
git fetch --all    
git checkout dev2    切换到 dev2 分支上
先 git checkout dev2    然后 git checkout -b vali-dev2   在dev2分支的基础上创建新分支 vali-dev2
git checkout master        切换到 master 分支上
git checkout vali-dev2    切换到 vali-dev2 分支上
git add .
git revert后的vim退出:一直按住esc ,再连续按大写的z两次
go build -mod=vendor main.go

git log --oneline    一次commit注释放在一行内显示
git fetch --all
git rebase origin/dev2    将远端的dev2的分支最新代码合并到本地的分支上(vali-dev2)  注意这里的origin 后面跟具体的分支名

【删除分支,谨慎操作!!】 
删除本地分支   git branch -d 
删除远程分支   git push origin --delete mybranchname    
【删除分支,谨慎操作!!】
清理本地分支:
    git remote prune origin


git fetch --all
git rebase origin/dev
去解决冲突
git rebase --continue
git reset --mixed HEAD~4
git add .
git commit -m "update"
git checkout origin/dev3

git branch -D vali-dev2
git branch
git checkout -b vali-dev3
git log --oneline

  • git add 文件名        将文件加入本次提交
  • git commit -m "本次提交的注释"
  • git reset --hard HEAD~2        往前回溯两个版本
  • git reset --hard 版本号        往前回溯到某个版本
  • git log        查看提交记录
  • git reflog     查看每一次提交的命令及版本号
  • git checkout -- 文件名        放弃工作区内的修改。(文件的修改也会回滚)
  • git reset HEAD 文件名        撤销缓存区的修改。
  • git rm  文件名        删除文件(操作完成后必须要git commit -m "说明"才是真正从版本库中删除)
  • 误删 执行git checkout --文件名  即可恢复。
  • 要关联一个远程库,将本地的仓库和远端的仓库进行绑定。
    git remote add origin git@github.com:simba/learngit.git
    
    git push -u origin master
    
    必须按先后顺序操作。

说明:simba是你的github账号, learngit 是在github上建的仓库名。

远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。

  • 将本地的master分支的最新代码提交到github。(此操作是基于上一条操作的。)
git push origin master

下载远程代码到本地:

  • git clone git@github.com:liushisan/gitskills001.git

    说明:此处的git@github.com:liushisan/gitskills001.git需要替换成你自己的git地址。

如果提示:

E:\github>git clone git@github.com:liushisan/gitskills0
Cloning into 'gitskills001'...
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

则是你的公钥问题。重新配公钥就解决了。

git checkout -b feature/v1.0-operational    在当前分支基础上新增一个分支 feature/v1.0-operational
git checkout .  忽略本地的改动
git branch        查看当前是在哪个分支上
git fetch --all    
git checkout dev2    切换到 dev2 分支上
先 git checkout dev2    然后 git checkout -b vali-dev2   在dev2分支的基础上创建新分支 vali-dev2
git checkout master        切换到 master 分支上
git checkout vali-dev2    切换到 vali-dev2 分支上
git add .
git revert后的vim退出:一直按住esc ,再连续按大写的z两次
go build -mod=vendor main.go

git log --oneline    一次commit注释放在一行内显示
git fetch --all
git rebase origin/dev2    将远端的dev2的分支最新代码合并到本地的分支上(vali-dev2)

【删除分支,谨慎操作!!】 
删除本地分支   git branch -d 
删除远程分支   git push origin --delete mybranchname    
【删除分支,谨慎操作!!】
清理本地分支:
    git remote prune origin


git fetch --all
git rebase origin/dev
去解决冲突
git rebase --continue
git reset --mixed HEAD~4
git add .
git commit -m "update"
git checkout origin/dev3

git branch -D vali-dev2
git branch
git checkout -b vali-dev3
git log --oneline


git status
git add .
git commit -m "update"
git log --oneline
git fetch --all
git rebase origin/dev3
git log --oneline
git status

git log --oneline
git reset --mixed HEAD~5
git remote rename origin originhttp
git remote add origin ssh://git@code.baidu.com.cn:8004/git/videos-go.git

git找回rebase误删的文件
git reflog
git checkout -- .

0、git checkout lch-dev3
1、git fetch --all  
	如果有冲突,先解决冲突 VCS --》 GIT --》 resolve conflicts
2、git rebase origin/dev3  然后多等待一会儿(编辑器卡顿)
3、git status 检查本地代码状态,判断是否有冲突,判断是否rebase完毕,
	如果依然有冲突,VCS解决冲突,然后 git rebase --continue 

windows下配置免密登录

git config credential.helper manager

再次pull时提示输入github的账号免密,操作即可。

git 忽略本地的commit,强行拉取

git fetch --all
git reset --hard origin
git pull


git checkout -b feature/v1.0-operational    在当前分支基础上新增一个分支 feature/v1.0-operational
git checkout .  忽略本地的改动
git branch        查看当前是在哪个分支上
git fetch --all    
git checkout dev2    切换到 dev2 分支上
先 git checkout dev2    然后 git checkout -b vali-dev2   在dev2分支的基础上创建新分支 vali-dev2
git checkout master        切换到 master 分支上
git checkout vali-dev2    切换到 vali-dev2 分支上
git add .
git revert后的vim退出:一直按住esc ,再连续按大写的z两次
go build -mod=vendor main.go

git log --oneline    一次commit注释放在一行内显示
git fetch --all
git rebase origin/dev2    将远端的dev2的分支最新代码合并到本地的分支上(vali-dev2)  注意这里的origin 后面跟具体的分支名

【删除分支,谨慎操作!!】 
删除本地分支   git branch -d 
删除远程分支   git push origin --delete mybranchname    
【删除分支,谨慎操作!!】
清理本地分支:
    git remote prune origin


git fetch --all
git rebase origin/dev
去解决冲突
git rebase --continue
git reset --mixed HEAD~4
git add .
git commit -m "update"
git checkout origin/dev3

git branch -D vali-dev2
git branch
git checkout -b vali-dev3
git log --oneline

在feature1.0分支上分别提交了  bc17f25、1bba452、59e67d 三个commit

现在需要把 1bba452、59e67d 这两次提交的内容合并到feature2.0分支上。

切换到feature2.0分支上。然后执行 git cherry-pick  1bba452 59e67d ,然后执行git push origin feature2.0 就搞定了。

git统计提交行数

git log --since="2003-01-01" --until="2024-01-11" --author="提交者帐号" --pretty=tformat: --numstat |grep -v 'vendor/'|awk '{ add +=$1;subs +=$2; loc += $1 - $2} END { printf "Added lines: %s,Removed lines: %s, Total lines: %s\n", add, subs, loc }' -

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值