假设一种场景。
当你第一次git bash的时候,最好是先创建用户名和邮箱,这样提交才知道是谁提交的
- git add <filename> 加入暂存区
- git add . 全部加入暂存区
- git commit -m <message> 提交加描述
- git log 查看日志
- git log --pretty=oneline
- git reset <filename> 暂存区退回
- git reset --hard HEAD^ 回退至上一次提交
- git reset --hard HEAD~n 回退至n(都是相对于自己现在所处的版本)
此时若你再git log,看不到未来,只能看到之前commit的
若你想看全部记录,就可以通过
- git reflog
- git reset <id> 切换为某一个版本
- --hard 不保留所有变更
- --soft 保留变更且变更内容处于Staged
- --mixed(默认) 保留变更且变更内容处于Modified
分支,就是创建一个影分身,之后两者互不干扰,独自修改并不影响对方
- git branch <name> 创建分支
- git checkout -b <name><id> 创建分支并转至新创建的分支,若id不写,就是默认以最近的commit为基准来创建分支
- git checkout <name> 切换至某分支
- git branch 查看所有分支
- git diff 确定冲突在哪儿
- git merge <name> 分支合并
- git branch -D <name> 删除分支
- git push origin --delete xxx 删除远程分支
github中可以创建一个仓库,大家就可以一起关联这个仓库,来进行文件的修改等(也可以使用国内的gitee)
这就和SVN中创建仓库一样
1. git remote add origin <url> 将本地文件推送至远程仓库
2. git push origin master 提交
此时另一个用户:
1. git clone <url> <新项目名> 将远程仓库的内容复制到本地
2. git push origin master 提交
若用户想用最新版的
1. git pull origin master
回忆SVN的操作。在我这儿有一个库,大家都关联了。每次操作完后,进行一次commit,然后大家只要update一下就能获取到新的内容,感觉更便捷一些。就这么两步操作。而Git:
经常会遇到一些很奇怪的错误,感觉就都是因为没有git pull导致,然而经常不能直接git pull,有时候他可能没有确定好远程的分支或者什么,所以你可能要写git pull origin master这样子,git push也是有时候需要这么写或者写上流分支,这样就不会出错了
在VCS中有个Get From Version Controll...(每个版本的都不大一样),然后直接将克隆的地址输入,就可以实现克隆
settings-->version control-->git
view-->commit 里面有local changes 可以查看自己都修改了哪些(IDEA2020)
关联好后,底部就会有git,可以点开
每次有修改在local changes里都可以进行commit
如果你已经修改了一些文件,又想要创建新分支,可以先shelve changes,切换至新分支后,再unsheleve...修改的内容就可以变到新分支里了
为什么我用gitee,每次提交都不需要输入帐号密码呢?
原文:https://www.cnblogs.com/lwxx/p/14094890.html