markdown语法:Markdown 基本语法 | Markdown 官方教程
git 初始化需要做的事情 "本地仓库gitlab"
设置邮箱和姓名
-
git config --global user.name "yourname"
-
git config --global user.email your_email@youremail.com
-
git config --global diff.tool vimdiff
#设置difftool -
git config --global difftool.prompt false
#关闭启动difftool提示 -
git config --global alias.d difftool
#设置别名 -
git config --global core.editor "vim"
添加ssh公钥:
-
ssh-keygen -t rsa -C "email.name"
-
回车三下
-
家目录下会生成 ~/.ssh/id_rsa.pub ,复制到gitlab设置里面的ssh密钥
常用命令
-
仓库<URL>
-
查看当前远程仓库链接
git remote -v
-
克隆仓库到本地
git clone <URL>
克隆不同分支代码 :
git clone -b <branch_name> <URL>
-
重新设置仓库地址
git remote set-url origin <UAL>
-
-
查看新版本哪些文件发生了变化
-
log
-
git log
查看提交 -
git log --stat
显示每个提交的统计信息,包括文件增删改情况 -
更新了一个版本,查看文件,更新了什么, (-1)选项是查看一个版本的,如果没有-1就是查看该文件在所有版本的变化 `git log -p -1 -- <版本地址>
`git log -p -1 <版本号>
-
status / diff
-
git status
查看当前版本修改了哪些文件,(.gitignore里面的文件将被忽略)
-
-
-
git diff ./main.c
查看自己修改了文件情况, 比如./main.c -
grep
-
git grep home_page_init
在仓库中搜索字符串 home_page_init -
git grep -i home_page_init
(忽略大小写)
-
-
git grep home_page_init -- '*.js'
(如果要同时搜索多个文件,可以在命令的最后指定要搜索的文件路径。例如,要在当前目录及其子目录中搜索所有的 .js 文件并查找 home_page_init 字符串)
-
更新主分支的代码,会清空自己所作的修改,如果代码有有用的修改,则不建议使用这条命令
git pull origin main
-
tag 标记使用
-
git tag
查看所有的tag -
创建
-
git tag -a v1.0 -m "Release version 1.0"
#创建annotated tag
-
-
git tag v2.0
# 创建lightweight tag
-
-
关联
-
git tag -f <tag_name> <commit_hash>
让tag指向某个特定的commit而不是HEAD -
提交/拉取
-
git push origin v1.0
# 将tag v1.0 提交到远程仓库 origin
-
-
git push origin --tags
将本地所有tag推送到远程仓库origin (Git 只推送标签信息,不推送分支或提交)-
git fetch origin --tags
更新为远程仓库的最新标签列表 (远程仓库拉取数据到本地仓库,但不合并到当前分支)
-
推送代码(1:确保是版本的最新代码上修改的代码。2:如果没有设置提交者名称和邮箱,建议先设置,)
-
查看当前配置/文件
-
git config --list
查看修改的文件
-
git status
下拉文件(是否仓库与本地不同,不同先合并再上传)
-
git pull
添加修改的文件
- `git add .` #语法是 git-add - Add file contents to the index, git add .是添加当前目录下所有的修改文件
-
gir add *.c
# 语法为git-add-*.文件底标(如 .c .h .png ) 是添加当前文件中 .c 的所有修改文件
撤销添加 (移除暂存区文件)
-
git reset HEAD <file>
撤销对单个文件的添加 -
git reset HEAD . # 或者 git reset --hard
完全放弃暂存区的所有更改(包括所有被添加的文件)`--hard
选项会重置所有内容到上一次提交的状态`删除文件
-
git clean --f
提交:
-
git commit
#会打开一个vim,编辑此次提交的log
-
-
git commit -m "第一次提交"
# -m 后的提交日志必须要写推送到代码仓库,就是推送到内部网站,以便项目成员可以clone
-
git push origin main
分支管理:
-
git branch
显示当前分支 -
git branch <分支名称>
创建分支 -
git branch -a
//显示所有分支 -
git switch <分支名称>
切换到这个分支 -
git checkout <分支名称>
//切换到这个分支,执行这个命令你的仓库当前分支不要有修改 -
git checkout -b <分支名称>
从当前分支(master)创建一个新分支 -
git checkout -d <分支名称>
删除分支 -
git checkout
提交sha值 //切换到这个提交 -
git checkout .
恢复上一回提交状态 (已修改,但是未缓存的状态) -
git checkout -- .
回退版本, 恢复当前目录下所有文件到上一次提交状态(丢弃所有未提交的修改)
具体应用流程(步骤)
提交推送:
-
建立本地仓库
-
初始化本地仓库
-
克隆代码
-
克隆选择好的分支代码
git clone <URL>
-
克隆分支代码
git clone -b <branch_name> <URL>
-
-
修改代码
-
上拉代码
-
查看分支操作
git branch -a
-
转到对应的文件夹
cd
-
查看修改的文件
git status
-
添加修改文件
git add <__>
-
查看添加文件
git status
-
提交代码/日志
gie commit
弹出一大串,光标在最上面,直接写下:日志
可直接中文英文1.按
ESC
确保处于命令模式2.输入
:wq
表示保存w
表示写入(保存)q
表示退出 回车
-
-
更改版本号
-
显示所有分支
git branch -a
-
-
推送代码
-
推送到代码仓库(推送内部仓库)
git push origin 分支名
-
创建tag标题
git tag 标题名/版本名
-
推送tag标题
git push origin 标题名/版本名
-
取消提交:
-
删除当前提交
git reset HEAD <_>
删除文件:
查看分支操作
git branch -a
-
删除暂存区文件
-
删除本地文件
rm <__>
-
如果你想保留文件的历史记录,但不希望它出现在未来的提交中这会从暂存区移除文件,但不会影响本地文件
git rm --cached <__>
-
-
添加更改到暂存区
-
你已经删除了文件并且想将其从未来的提交中排除,如果删除的是整个目录)将不会包含该文件
git add .
或git add <__>
-
-
提交更改
-
描述删除操作的原因,写日志
git commit -m "Delete <__>
-
-
推送上传更改
-
推送修改
git push origin <分支>
-
删除分支(新手小心操作, 记得备份):
查看文件修改
git status
-
查看分支
git branch -a
-
删除本地分支
git branch -D <分支名>
-
删除远程分支
git push origin --delete <分支名>
-
查看分支看是否删除成功
git branch -a
-