Git基本操作

Git基础常用命令

git config --global user.name    #查看用户名

git config --global user.name "用户名"     #设置用户名

git config --global user.email    #查看用户邮箱

git config --global user.email "邮箱"     #设置用户邮箱

git init     #初始化本地库

git status     #查看本地库状态

git add .  #工作区---->>暂存区

git add 文件名     #指定文件工作区---->>暂存区  

git commit -m “日志信息”    #暂存区---->>本地库

git commit -m “日志信息” 文件名     #指定文件 暂存区---->>本地库

git log    #查看历史提交记录,同时还可以看见标签记录

git log --oneline --decorate --graph    #更优雅的方式

git reflog     #查看历史记录

git reset --hard commitID     #回退到指定已提交的版本,回退后当前版本会消失记录,可以借助git reflog分析返回

.gitignore    #可以在里面指定不想被管理的文件规则

Git的分支操作

git branch 分支名     #创建分支

git branch     #查看分支

git branch -vv    #查看本地分支和远程分支的关联情况

git checkout 分支名     #切换分支

git checkout -b 分支名     #创建并且切换到新创建的分支

git merge 分支名     #把指定分支的提交合并到当前分支上

git branch -d 分支名    #删除时需要做各种检查

git branch -D 分支名    #直接删除

产生冲突

冲突产生的表现:后面状态为 MERGING

查看冲突文件hello.txt冲突产生的原因:

合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。Git 无法替
我们决定使用哪一个。必须人为决定新代码内容。
查看状态(检测到有文件有两处修改)

解决冲突

1)编辑有冲突的文件,删除特殊符号,决定要使用的内容

特殊符号:<<<<<<< HEAD 当前分支的代码 ======= 合并过来的代码 >>>>>>> hot-fix

2)添加到暂存区

3)执行提交(注意:此时使用 git commit 命令时不能带文件名)

发现后面 MERGING 消失,变为正常

Git远程仓库

git remote add origin 远程仓库地址    #关联一个远程仓库并且取名为origin(一般都取这个名字)

第一次推送最好关联一下,关联之后可以直接使用 git push即可

git push [-f] [--set-upstream] origin 本地分支名:远程分支名    #如果本地和远程分支名一样可以写成git push origin 本地分支名

# -f 如果本地和远程冲突,会推送失败,加上 -f 会强制覆盖远程

# --set-upstream 将本地的分支和远程的分支关联起来

clone

git clone 远程地址 [本地仓库名]    #可以为clone的仓库取一个名字,否则就是和远程的名字一样

fetch和pull

git fetch    #将远程的仓库更新到本地仓库,但是分支不会合并,需要手动merge

git pull    #将远程仓库合并到本地,相当于git fetch + git merge 远程分支名

Git标签

git tag    #查看标签

git tag [-a] 标签号 [commitID] [-m "描述信息"]    #可以将此次提交打一个标签

# -a 带上此选项可以写注释,如果没有 -m 的描述信息,会提示你写描述信息

# commitID 此操作可以在历史提交中选择一次提交打标签,否则就是当前状态打上标签

git show tagname    #可以查看标签信息以及提交者的消息

git push origin tagname    #push的时候不会push标签,除非你显示的推送

git tag -d tagname    #删除标签,不会影响远程

git push origin :refs/tags/tagname    #将:前面的空值推送,从而删除

git push origin --delete tagname    #直接删除远程标签

posted @ 2023-02-13 00:30  happy_in  阅读(22)  评论(0)    收藏  举报