关于add
1、 add是将修改的文件提交到暂存区,比如 git add .将所有修改的文件加入暂存区,git add “路径”将指定文件加入暂存区
2、 取消add请查看reset 3,4
关于commit
1、 commit是将暂存区的文件提交到本地分支
2、 查看commit记录用git log,如果只想查看最近一次的可以git log -n1,以此类推也可以n2n3n4.
3、 想要查看某个commit改了哪些文件可以 git log -n"第几次commit" --stat
4、 想要查看某个commit改了哪些文件的具体哪些地方可以git log -n"第几次commit" -p
5、 如果commit了一个不想要的文件可以 git checkout origin/"要恢复的分支" -- “不想要的 路径”
6、 想要把修改加入到上一次提交git commit —amend。
7、 如果要修改上一次的提交信息,git commit --amend -m "改的话"。
关于push
1、 push就是将本地分支的修改推送到远程分支,直接 git push origin "远程分支名"
关于checkout
1、 chekout可以用来切换分支,也可以用来取消工作区的修改。
2、 假如我想要把工作区的所有修改全部取消掉,可以 git checkout .
3、 如果只是想取消一个文件的修改可以 git checkout “文件目录”
4、 切换分支的话 直接 git checkout “分支名”
关于reset
1、 reset可以用来回退版本也可以回退已经加入暂存区的文件
2、 如果你想回到上一次commit的版本可以git reset --hard,如果想要回到指定版本可以git reset --hard "版本哈希值",在回退版本时加 -- hard是将代码完全恢复到指定的版本,也就是说当前的修改将消失,如果不加-- hard的话你的修改也会被带到恢复的版本。
3、 如果git add . 后发现add 的有一个文件改的不对可以用 git reset "文件目录",将暂存区的文件重新放入工作区,
4、 如果想把暂存区所有的文件全部放入工作区就可以git reset HEAD将暂存区的所有文件放入工作区
关于stash
1、stash是将目前的修改先保存起来然后把代码恢复到没做修改之前,如果多次stash他会将修改的文件放入一个数组,0是最近一次保存。
2、想要恢复stash的代码如果是最近一次可以直接 git stash pop,如果想恢复到前几次的stash可以 git stash apply stash@{需要回退的数}
3、想要查看stash列表可以 git stash list
关于fetch pull
1、fetch从远程获取代码到本地但不会自动merge,它和pull的区别在于pull会自动merge
2、pull相当于fetch+merge操作,git pull --rebase 将merge换成rebase合并。
关于rebase merge
1、两个都是用来合并分支的如果没有冲突时两者一样,在处理完冲突后rebase要add 。 rebase --container分支上不会有解决冲突的新commit,merge要add 。 commit -m'fix conflict',这是会产生一个commit
每次操作都需要输入用户名和密码感觉很繁琐,解决方法,在本地的工程文件夹的.git下打开config文件
添加:
[credential]
helper = store
再输入一次用户名密码后就可以保存住了。