拉取与建立仓库
用户签名
1 2 3
| git config --global user.name 用户名 git config --global user.email 邮箱 cat ~/.gitconfig
|
出## 拉取代码
初始化仓库
1 2
| git init -- 初始化本地仓库 git status --查询本地库状态
|
会建立并转到master分支下
更新代码
提交代码
提交
1 2 3 4
| git add . -- 将改动提交至暂存区 git commit -m "日志信息" -- 提交所有改动过的文件 git push origin master git reflog -- 查看历史记录
|
撤销
1 2 3
| git reset --hard HEAD -- 撤销所有未提交文件的修改内容 git checkout HEAD 文件名 --撤销所有未提交文件的修改内容 git revert <commit> -- 撤销提交
|
合并多次提交
例如我要合并前两个提交
指名要合并的版本之前的版本号
git rebase -i 3a4226b
请注意 3a4226b
这个版本是不参与合并的,可以把它当做一个坐标
执行了 rebase 命令之后,会弹出一个窗口
1 2 3 4 5
| pick 3ca6ec3 '注释**********' pick 1b40566 '注释*********' pick 53f244a '注释**********'
|
将除了第一个的 pick,其他都改为 s 或 squash
1 2 3 4 5
| pick 3ca6ec3 '注释**********' squash 1b40566 '注释*********' squash 53f244a '注释**********'
|
这时候,需要强制push上去 git push -f
分支
添加远程分支
1
| git remote add origin https://XXX
|
查看分支
1
| git branch -a --查看本地分支和远程分支
|
查看远程分支 URL
更新远程分支 URL
1
| git remote set-url origin https://github.com/user/new-repo.git
|
创建分支
切换分支
1
| git checkout 分支名 -- 切换分支
|
合并分支
首先要切换到master分支下
1 2
| git checkout master git merge 分支名 --合并分支
|
上传到 main 分支
需要合并到 main 分支
- git fetch origin
- git checkout main
- git merge master –allow-unrelated-histories(合并分支解决冲突)
添加安全权限
1
| git config --global --add safe.directory "*"
|
解决冲突
1 2 3
| git fetch origin git clean -f git reset --hard origin/master
|