文章目录
前言
一、Git
1. 环境配置
2. 基本操作
3. 版本切换
4. 忽略文件
5. 分支
6. 命令行 --tag
7. 查看远程
8. 添加/移除远程仓库
9. 从远程仓库获取代码
二、Github/Gitee
1. 在Github/Gitee中创建一个空的库
2. 创建ssh密钥
3. 查看ssh密钥
4. github设置密钥
5. 绑定github
6. 绑定远程仓库
7. 查看仓库
8. 推送到仓库
三、Gitlab同理
1. Git global setup 配置信息
2. Create a new repository (创建一个新的存储库)
3. Push an existing folder (推送现有文件夹)
4. Push an existing Git repository (推送现有的 Git 存储库)
前言
Git工作目录下的文件存在两种状态:
-
untracked 未跟踪(未被纳入版本控制) : 新建的文件
-
tracked 已跟踪(被纳入版本控制)
2.1 Staged 已暂存状态 : 添加 但未提交状态
2.2 Unmodified 未修改状态 : 已提交
2.3 Modified 已修改状态 : 修改了,但是还没有提交
一、Git
1. 环境配置
官网下载地址Git (git-scm.com),安装完成后可以看到Git Bash文件
在需要使用git的文件夹中鼠标右键并选择open Git bash here。
-
设置用户信息
git config --global user.name “name”
git config --global user.email “@gmail.com”
-
查看配置信息
git config --list
git config user.name
2. 基本操作
-
将未跟踪的文件加入暂存区 git add <文件名>
-
将暂存区的文件取消暂存 (取消 add ) git reset <文件名>
-
将暂存区的文件修改提交到本地仓库 git commit -m "日志信息" <文件名>
-
从本地工作区 删除文件 git rm <文件名>
-
如果本工作区库误删, 想要回退 git checkout head <文件名>
-
查看状态 git status
-
初始化 git init
3. 版本切换
- 查看版本,确定需要回到的时刻点 git log
git log --pretty=oneline --abbrev-commit --all --graph
- 查看历史操作: 得到最新的commit id
git reflog
- 回退操作
git reset --hard 提交编号
4. 忽略文件
-
创建 .gitignore
-
在文件中添加忽略的文件名
-
touch .gitignore
-
vi .gitignore
-
按insert键进入编辑模式
.gitignore中忽略不同的文件使用的命令不同:
/文件名.txt 单个文件
*.txt 此类型所有文件
project/ project文件夹下所有文件
- : wq 保存退出
5. 分支
-
列出所有本地分支 git branch
-
列出所有远程分支 git branch -r
-
列出所有本地分支和远程分支 git branch -a
-
创建分支 git branch <分支名>
-
切换分支 git checkout <分支名>
-
删除分支(如果分支已经修改过,则不允许删除) git branch -d <分支名>
-
强制删除分支 git branch -D <分支名>
-
提交分支至远程仓库 git push <仓库简称> <分支名称>
-
合并分支 将其他分支合并至当前工作区 git merge <分支名称>
-
删除远程仓库分支 git push origin –d branchName
6. 命令行 --tag
-
列出所有tag git tag
-
查看tag详细信息 git show [tagName]
-
新建一个tag git tag [tagName]
-
提交指定tag git push [仓库简称] [tagName]
-
新建一个分支,指向某个tag git checkout -b [branch] [tag]
-
删除本地tag git tag -d [tag]
-
删除远程tag (注意 空格) git push origin :refs/tags/[tag]
7. 查看远程
- 查看远程 列出指定的每一个远程服务器的简写 git remote
- 查看远程 , 列出 简称和地址 git remote -v
- 查看远程仓库详细地址 git remote show <仓库简称>
8. 添加/移除远程仓库
- 添加远程仓库 git remote add <shortname> <url>
- 移除远程仓库和本地仓库的关系(只是从本地移除远程仓库的关联关系,并不会真正影响到远程仓库) git remote rm <shortname>
9. 从远程仓库获取代码
-
从远程仓库克隆 git clone <url>
-
从远程仓库拉取 (拉取到.git 目录,不会合并到工作区,工作区发生变化)
git fetch <shortname> <分支名称>
-
手动合并 把某个版本的某个分支合并到当前工作区
git merge <shortname>/<分支名称>
-
从远程仓库拉取 (拉取到.git 目录,合并到工作区,工作区不发生变化) = fetch+merge
git pull <shortname> <分支名称>
git pull <shortname> <分支名称> --allow-unrelated-histories # 强制拉取合并
注意:如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错(fatal: refusing to merge unrelated histories ),解决此问题可以在git pull命令后加入参数--allow-unrelated-histories (如上 命令)
- 将本地仓库推送至远程仓库的某个分支
git push [remote-name] [branch-name]
二、Github/Gitee
1. 在Github/Gitee中创建一个空的库
2. 创建ssh密钥
ssh-keygen -t rsa
3. 查看ssh密钥
cat ~/.ssh/id_rsa.pub 复制ssh密钥
4. github设置密钥
在Github/Gitee的设置中添加ssh key
5. 绑定github
ssh -T git@github.com
ssh -T git@gitee.com
6. 绑定远程仓库
复制ssh的git链接。
链接: git@github.com:<项目名>.git
命令: git remote add 远程仓库名字 仓库路径
git remote add origin git@github.com:<项目名>.git
7. 查看仓库
git remote
8. 推送到仓库
git push [-f] [--ste-upstream] [远端名字] [本地分支名]:[远端分支名]
[-f] :强制覆盖
如果远端分支和本地分支一样,可以只写本地分支
git push origin master
--ste-upstream 推送到远端的同时建立和远端分支的关联关系
git push --set-upstream origin master:master
输入这个以后可以将本地master和远程master绑定,以后只需要使用git push就可以了。
三、Gitlab同理
1. Git global setup 配置信息
git config --global user.name ""
git config --global user.email "@gmail.com"
2. Create a new repository (创建一个新的存储库)
git clone git@gitlab.com:<项目名>.git
cd <文件名>
git switch --create main
touch README.md
git add README.md
git commit -m "add README"
git push --set-upstream origin main
3. Push an existing folder (推送现有文件夹)
cd existing_folder
git init --initial-branch=main
git remote add origin git@gitlab.com:<项目名>.git
git add .
git commit -m "Initial commit"
git push --set-upstream origin main文章来源:https://www.toymoban.com/news/detail-852026.html
4. Push an existing Git repository (推送现有的 Git 存储库)
cd existing_repo
git remote rename origin old-origin
git remote add origin git@gitlab.com:<项目名>.git
git push --set-upstream origin --all
git push --set-upstream origin --tags文章来源地址https://www.toymoban.com/news/detail-852026.html
到了这里,关于Git和Github操作命令及关联远程库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!