git常用命令

160 阅读3分钟

Git 常用命令

Git提交代码到指定分支

git clone -b rongmei2022 仓库地址  #拉取指定分支
git status  #查看文件的状态
git add .  #把所有改过的文件都放到缓存区
git commit -m  '注释'  #把文件从缓存区放到本地仓库内
git push origin rongmei2022  #把到本地仓库的代码推送到远程仓库
git pull  #把远程仓库的代码拉到本地仓库

Git提交代码到新分支

获取远程代码修改后,想要push到远端与原来不同的新分支,可以使用下面的命令实现:

git push origin 本地分支:远端希望创建的分支
git push origin master:my_remote_new_branch

Git Reset(回滚)

  1. 回滚到指定历史版本

    # 1.先使用git log查看一下历史版本
    git log
    # 2.在使用git reset --hard命令回滚
    git reset --hard 你要回滚的id值
    # 举例:git reset --hard 10086
    
  2. 回滚到当前版本的上一个版本

    git reset --hard HEAD^  #回退到上一个版本
    git reset --hard HEAD~2 #回退两个版本
    
    # 注意:这里的~2指回滚多少次,HEAD~2代表回滚master前二个版本
    

Git解决本地冲突

git pull --rebase origin master git rebase --continue

1、git push时报错:failed to push some refs to...

$ git push
error: failed to push some refs to 'http...git'

$ git pull --rebase origin master  ->  git push

原因:这是远程库与本地库不一致造成的,只要把远程库同步到本地库即可
上面指令的意思是把远程库中的更新合并到本地库中,–rebase的作用是取消掉本地库中刚刚的commit,并把他们接到更新后的版本库之中。

2、执行完 git pull --rebase origin master 后有合并冲突

参考文章:git的冲突解决--git rebase之abort、continue、skip

$ git status 查看发生冲突的文件, 然后手动解决冲突 (删除冲突的代码)

$ 接着执行 git add . |  git commit -m ''

$ 再次执行 git status, 如果没有冲突的文件,则可以提交。

$ git rebase --continue  ->  git push
Successfully rebased and updated refs/heads/master

# 执行完 $ git pull --rebase 之后,本地如果产生冲突,手动解决冲突之后,用"git add"命令去更新这些内容的索引。
然后执行 $ git rebase --continue 就可以线性的连接本地分支与远程分支,无误之后就会退出,回到主分支上。
注意:一般情况下,修改后检查没问题,使用rebase continue来合并冲突。

Git更换远程仓库地址

# 方法一
git remote -v  #查看远端地址
git remote #查看远端仓库名
git remote set-url origin https://github.com/xx/xx.git #新地址

# 方法二
git remote rm origin #删除远程的仓库
git remote add origin  https://github.com/xx/xx.git #重新添加远程仓库

Git.gitignore文件无效

在初始化git仓库时没有创建 .gitignore 文件来过滤不必要提交的文件,后来发现某些文件不需要提交时,再创建 .gitignore 来忽略这些文件只会对没有被跟踪的文件有效,已经被跟踪的文件不会被忽略。

可以先把本地缓存删除,然后再提交。

git rm -r --cached 要忽略的文件

参考文章:

使用.gitignore忽略文件或者文件夹及其失效解决方法

git如何忽略已经提交的文件 (.gitignore文件无效)

其他常用命令

git init //初始化项目
git log //提交日志 全部显示
git log --oneline //提交日志 优雅显示
git commit --amend //修改提交的信息
git config --list //查看基本配置
git config --global  user.name 'xxx.yyyzzz' //配置基本信息:用户名
git config --global  user.email 'xxx.yyyzzz@jnetdata.com' //配置基本信息:邮箱
git remote add origin URL(仓库地址) //将本地仓库关联到远程仓库
git branch //查看当前分支
git branch <name> //创建新分支
git checkout -b <name> //创建并切换到新分支
git branch -d <name> //删除分支
git checkout <name> //切换分支
git push origin master //把本地仓库的master分支推送到远程仓库的master分支