GIT

git学习笔记

删除项目直接本地删除文件夹就可以,云端步骤: 设置 -> 高级 -> 删除项目
本地git配置:
首先设计一下名称与邮箱:
git config --global user.name wjq
git config --global user.email 30387XXXXX@qq.com
创建项目文件夹:
mkdir project
cd project
git init
把当前文件夹创建成git仓库
云端git配置:
首先把ssh公钥复制到acgit账户设置中,然后本地在proje文件夹执行操作:
#这里不一样:用它生成的那个命令执行:
git remote add origin git@git.acwing.com:Despacito_Wang/project.git
git push -u origin master
//git - 'git rm --cached' 、 'git restore --staged' 和 'git reset' 之间有什么区别???

学习git的网站

https://learngitbranching.js.org/?locale=zh_CN

查看答案:show solution

git log 
git log --pretty=oneline
HEAD分离
git checkout main
git checkout [哈希值] 
git checkout HEAD~3 //head向父节点移动三次
git checkout main~1^2~1 //head移动到main的上一个结点的第二次提交的父节点的上一个结点
等价于 git checkout main~ 、 git checkout HEAD ^ 2 、git checkout HEAD~1
git branch -f main HEAD~3 //^^^ main在HEAD位置基础向上移动三次
git branch -f main [哈希值] //把main强制移动到[哈希值]的结点
git branch bugWork c2 //新创建bugWork并移动到c2
git merge [分支名] //把分支名与HEAD结点合并若HEAD为最新则不发生变化
git base [分支名] //把HEAD结点复制并放到该分支后面
git reset HEAD^ //local 本地 HEAD所在的结点回退1个版本
git revert HEAD^ //push 云端 HEAD所在的结点创建一个新的结点并指向该节点
git cherry-pick c2 c3 c4 //任意个参数把c2 c3 c4 依次放在HEAD所在节点的后面
git rebase -i HEAD~4 //HEAD往上4个结点处长出一个新的分支,并按照你所选的顺序复制过来
git rebase main bugFix //移动bugFix到新长出的结点,并指向main 若main 与 bugFix 在同一条直线上则直接bugFix移动到main上
git reset --hard f21e75 //与git checkout f21e75一样?
git checkout -- XX或git restore XX:将XX文件尚未加入暂存区的修改全部撤销
若HEAD处于游离态时,需要将工作区用git restore XX清除,在切换回master
git - 'git rm --cached' 、 'git restore --staged' 把暂存区的内容移动到工作区
删除分支git branch -d XX //git branch -D XX

eg: 文件名字统一为:readme.txt
我们目前最新的master结点内容为: 111 222 333
暂存区的内容修改为:111 222 333 444
工作区的内容为: 111 222 333 555
如果想切换为暂存区:只需要把工作区内容移除  git restore readme.txt即可。
如果想切换为之前的版本库需要把:工作区,暂存区都移除即可,顺序无所谓。
先移除暂存区:

git restore --stage readme.txt
此时readme.txt变为 111 222 333 555
git restore readme.txt
此时readme.txt变为 111 222 333 

先移除工作区:
git restore readme.txt
此时readme.txt变为 111 222 333 444
git restore --stage readme.txt
此时readme.txt变为 111 222 333 444
git restore readme.txt
此时readme.txt变为 111 222 333

git push -d origin [分支名] //把云端仓库分支删掉
git branch --set-upstream-to=origin/branch_name1 branch_name2:将远程的branch_name1分支与本地的branch_name2分支对应
git pull origin name //把name分支与HEAD所在的分支合并

git stash //把当前暂存区和工作区存在栈中,注意恢复时只恢复工作区不会恢复暂存区!
云服务器需要先git clone + "git@git.acwing.com:XXXXXX",再git pull等其他命令
全部评论

相关推荐

评论
3
3
分享

创作者周榜

更多
牛客网
牛客企业服务