git 除了提交和拉取之外的操作

399 阅读2分钟

作为一个初学者,日常在git的使用上碰到的问题有很多,也出过糗事。个人建议,初学者在团队合作中,对于git的使用还是要慎重,尤其是reset命令(我已经糗过几次了)~

修改远程仓库地址

方法有三种:

  1. 修改命令

    git remote set-url origin [url]
  2. 先删后加

    git remote rm origin
    git remote add origin [url]
  3. 直接修改config文件


撤销操作

  1. add 撤销
    git status 首先看一下add 的文件
    git reset HEAD  上一次add 里面的全部撤销了
    git reset HEAD fileName  对某个文件进行撤销了
  2. commit 撤销
    git log 查看节点
       commit  YYYYYYYYYYYYYYYYYYYYY
    
    git reset commit_id (回退到上一个 提交的节点 代码还是原来自己修改的)
    git reset --hard commit_id (回退到commit节点, 代码发生改变,本次修改会丢失)
  3. push 撤销

还原本地代码,此次操作之前和之后的commit和history都会保留,并且把这次撤销作为一次最新的提交
git revert HEAD 撤销前一次 commit
git revert HEAD^ 撤销前前一次 commit
git revert commit-id (git 会生成一个新的 commit,将指定的 commit 内容从当前分支上撤除)

git revert和git reset的区别:

revert 会将文件修改为目标版本的上一个版本,也就是撤销了修改及add、commit;

reset --hard差不多是完全重置到某个版本并且销毁提交记录(通过查阅,了解到--soft 可以恢复)。

所以在生产环境一般建议用git revert


windows 10 系统:git pull 出现问题

git rebase: “error: cannot stat 'file': Permission denied”

在使用git的时候报这个错解决办法:关掉占用此文件的程序


浅显理解,还有很多不足,期望与大家一起成长~