推荐
clone项目
git拉取文件到本地
git clone [url地址] [本地文件名]
本地初始化
本地文件关联到git,还未推送
#如果是第一次,先初始化
git init
#查看哪些是要上传的文件(红色的是没有add,绿色是add后没有commit)
git status
#将所有修改添加到暂存区
git add .
#提交到存储库
git commit -m "提交"
#如果是第一次,将本地分支改名为main
# github把master默认分支改为了main(https://www.bilibili.com/read/cv14795975)
git branch -M main
#如果是第一次,需将本地仓库关联到 远程仓库 上
git remote add origin https://github.com/cxr01/zhangsanshuo.git
查看远程主机
即关联的远程仓库
# 列出所有远程主机名。
# clone 项目到本地时,所使用的远程主机自动被Git命名为origin
git remote
# 查看远程主机网址
git remote -v
# 查看远程主机详细信息
git remote show <主机名>
# 添加远程主机(一般用于本地初始化init完后关联远程仓库)
git remote add <主机名> <网址>
# 删除远程主机
git remote rm <主机名>
# 远程主机的改名
git remote rename <原主机名> <新主机名>
推送
# 推送
git push
# 推送到远程仓库 origin仓库 的 main分支 上
git push -u origin main
-u:如果当前分支与多个主机存在追踪关系,那么这个时候-u选项会指定一个默认主机,这样后面就可以不加任何参数使用git push。
拉取
# 同步所有的远程分支到本地,再把最新提交的分支合并到当前分支
# 所以建议只有一个分支时使用
git pull
# 只获取了指定分支 master 的最新 commit 并合并到当前分支
git pull origin master
# 同步所有的远程分支到本地
git fetch
# 只获取了指定分支 master 的最新 commit
git fetch origin master
分支
# 查看所有分支
git branch -a
# 查看当前分支
git branch
# 创建dev分支
git branch dev
# 切换到dev分支
git checkout dev
# 创建dev并切换到dev分支上
git checkout -b dev
合并
注意:操作前一定要切换到要对应的分支
# 切换到dev分支
git checkout dev
# 将master分支合并到当前分支
git merge master
# 更新main分支的最新修改到当前分支。会将本地修改先放到一边,然后把其他分支main最新修改拿过来,接着在最新修改之上把我的修改放回去。放回去的过程可能会出现rabase conflict,此时就需要手动选择需要的代码
git rabase main
概念
pull 和 fetch
git pull = git fetch + git merge
fetch 只是从远程仓库拉取下来到本地仓库,可以通过 idea 获取其他方式查看提交下来的代码和历史记录。再决定是否 merge 到工作区(即我们写代码的地方)