Lesson 5. git
Lesson 5. git
概述
常用命令操作
- 全局配置
git config --global user.name xxx
设置全局用户名,信息记录在.gitconfig
;git config --global user.email xxx@xxx.com
设置全局邮箱;git init
当前目录配置成 git 仓库;
- 常用命令
git add xxx
把文件从工作区添加到暂存区,一般git add .
把所有待加入暂存区文件加入;git status
查看仓库状态,显示哪些文件发生变化,哪些文件未加入暂存区;git commit -m "message"
暂存区内容提交到当前分支(建新节点),HEAD 指向该新节点,暂存区清空;
- 版本回滚
git log --pretty=oneline
查看当前分支所有版本 (从下往上看);git reset --hard HEAD^
将代码回滚 n 个版本 ( n 个 ^ ),同时移动 HEAD 指针指向当前版本;git reflog
查看 HEAD 指针的移动历史,进而可以看到各个 commit 版本的编号;git reset --hard 版本号
将代码移动到 ‘版本号’ 代表的版本;
- 暂存区操作
git restore --stage xxx
把文件从暂存区中删除;git restore xxx
把文件回滚到暂存区版本,如果暂存区没有,则回滚到HEAD 指向版本;git diff xxx
比较当前文件和暂存区中该文件之间的区别;
- 云端远程仓库
git remote add origin git@git.acwing.com:xxx/XXX.git
本地仓库关联到远程仓库,一般建立项目的页面下会提示如何操作,这里用的是 AcGit 平台,不同平台不一样;git push -u
将当前分支推送到远程仓库,第一次需要 -u 之后不需要;git clone git@git.acwing.com:xxx/XXX.git
将远程仓库 xxx 下载到当前目录下,clone 之后的链接在远程仓库复制;
- 分支操作
git checkout -b branch_name
创建新分支,并且切换到该分支下;git branch
查看所有分支和当前所在分支;git checkout branch_name
切换到branch_name
分支,HEAD 指向该分支最新版本;git merge branch_name
将分支branch_name
合并到当前分支,合并时可能遇到冲突,手动处理;git branch -d branch_name
删除分支;git push --set-upstream origin branch_name
在提交的时候如果云端没有该分支,则创建该分支;git push -d origin branch_name
将云端仓库中的分支删除;git branch --set-upstream-to=origin/branch_name1 branch_name2
将云端的分支branch_name1
与本地的分支branch_name2
对应;git pull
将云端的当前分支同步到本地,并且进行 merge 操作;git pull origin branch_name
将远程分支和本地当前分支合并;git checkout -t origin/branch_name
将远程的branch_name
分支拉取到本地;