一,git 常用操作
1,用户设置
在Windows上安装Git,运行Git bash 弹出命令窗口,输入以下命令设置用户
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
email 就是密码
2,基本操作
2.1 从远程仓库获取项目到本地
新建一个文件夹,在文件夹内右键选择 Git Bash Here
在命令行内输入要克隆的项目
git clone yourAdrress...
默认克隆的是master主分支,如果要克隆其他分支(如:sit分支),使用如下命令:
git clone -b sit yourAddress...
2.2 常用操作
代码提交
第一步:查看文件变动情况,红色字体为改动的文件
git status
第二步:查看改动具体内容
git diff xxx.txt
第三步:add 和 commit ,文件提交到本地仓库
git add xxx.txt
git commit -m "这里加文件说明"
commit 之后,git status 查看是否还有其他文件,所有文件都提交完了再执行第四步
第四步:从远程仓库更新
git pull
第五步:有冲突就处理
第六步:推送到远程仓库,第三步只提交到了本地仓库
git push origin master(分支名)
PS:多个文件提交时,可以先add 所有文件,最后一起提交一次,但这样这一批就只能写一个说明,不同文件的不同细节说明,还是要一个一个的提交
即:
多个提交
git add 01.txt
git add 02.txt
...
git commit -m "统一说明"
单个提交
git add 01.txt
git commit -m "01文件的说明"
git add 02.txt
git commit -m "02文件的说明"
...
3,特殊情况
3.1 撤销修改
放弃本地修改
@1:未执行 git add,直接 checkout 即可
git checkout xxx.txt
@2:已执行 git add,但未执行 git commit -m “…”,需要两步
git reset HEAD xxx.txt
git checkout xxx.txt
@3:已执行 git commit …,需要回退版本
git reset --hard HEAD^
3.2 本地仓,修改已提交注释
先分类
@1:修改最近一次提交的注释
查看日志,q 退出
git log
修改注释命令
git commit --amend
按c进入编辑模式,修改注释后,按Esc,:wq (保存退出),即可
(如果不小心删除一些东西,按Esc,:q!(不保存退出))
@2:修改之前某次的注释
查看日志,q 退出
git log
通过查询日志,找找要改的是第几个HEAD(譬如之前倒数第三个),那命令如下:
git rebase -i HEAD~3
按c进入编辑模式,将需要改的注释前 pick 改为 edit ,按Esc,:wq(保存退出)
(如果不小心删除一些东西,按Esc,:q!(不保存退出))
之后,就像第一种情况(修改最近一次注释)一样
git commit --amend
按c进入编辑模式,修改注释后,按Esc,:wq (保存退出),即可
(如果不小心删除一些东西,按Esc,:q!(不保存退出))
之后
git rebase --continue
查看日志
git log
修改成功 @_@
@3 :分支,多次提交记录合并,rebase
// 1,最近4次提交记录合并
git rebase -i HEAD~5
第一个pick 不动,其他 pick 改为 f,然后 :wq 保存退出
如有异常,处理异常,没有则保存退出
// 2,强制推到远程分支仓库,push前,不要pull,要不日志会乱。。
git push --force
// 3,修改合并后的提交记录(HEAD~1:本地最新的提交记录)
git rebase -i HEAD~1
弹出的第一个黑窗口可以不做修改,直接:wq保存退出
弹出的第一个窗口,修改最上面的提交信息,:wq保存退出
最后别忘了强推:git push --force
参考:https://www.jianshu.com/p/b6d3216730b8
4,参考资料
https://www.liaoxuefeng.com/wiki/896043488029600/896067074338496
https://blog.youkuaiyun.com/yuexiazhufeng/article/details/84290211
https://blog.youkuaiyun.com/u013190088/article/details/82026442?utm_source=app