Git 是一种分布式版本控制系统,每个用户都有完整的版本库,可以在本地进行提交、分支、合并等操作,不需要网络连接。 SVN 是一种集中式版本控制系统,所有文件的历史记录都保存在中央服务器上,用户需要通过网络连接来提交和获取历史记录。
git pull
git push
git config -- global user.name "firgk"
git config -- global user.email "1627368483@qq.com"
git init
git status
git add 文件名
git add 文件1 文件2
git add .
git commit -m ""
基于http协议
git init
git config user.name ""
git config user.email ""
git remote add origin http://...... (git remote remove origin)
git add .
git commit -m "upload"
git push
基于ssh协议
ssh-keygen -t rsa
公钥 全部内容 粘贴到github
后续操作免密
如果提交了,但是提交之前没拉取,并且有修改
仍然可以git pull
内容不会覆盖,git会自动帮我们合并
忽略文件
*.zip
mdir/ # 目录
!index 不忽略 ,! 为非
分支操作
git branch # 查看分支
git branch 分支名称 # 创建分支
git checkout 分支名称 # 切换分支
git merge 分支名称(master中) # 合并分支
git branch -d 分支名称 删除名称
版本回退操作
git log
git reset --hard 提交编号
回退之后,再回到之间的版本
git reflog
git reset ---hard 提交编号
从暂存区中删除文件 git rm --cashed 文件名
将本地分支与远程分支进行关联
git push --set-upstream origin master
git push: 将本地提交推送到远程仓库。
--set-upstream(或者简写为 -u): 将本地分支与远程分支进行关联,这样在以后的推送操作中,只需要使用 git push 命令,Git 就会自动将本地分支的更改推送到已关联的远程分支上。
origin: 远程仓库的名称,通常是你的代码托管服务(比如GitHub、GitLab等)给你的默认名称。
master: 远程仓库中的目标分支,这里是指将本地分支推送到远程仓库的主分支(通常是指主开发分支)。
重命名分支
git branch -M main
重新链接到仓库
# 本地仓库版本和远程仓库版本一致
git pull origin master # 从远程 master 分支拉取最新的代码到本地,并自动合并到当前所在的分支。
# 不一致
git push -u origin master # 将本地的 master 分支推送到远程仓库的 master 分支
or
git push --set-upstream origin master
git如何合并分支
git merge <要合并的分支名称>
Git会尝试自动合并更改。如果自动合并成功,会生成一个新的版本。git的三种状态 已提交 保存在了本地服务器中 已修改 已暂存 表示对文件的当前版本做了标记,使其包含在下次提交的快照中