Git笔记
1.创建仓库
git init <new_repo> // 创建本地仓库
2.clone仓库
git clone <project_address>
3.add文件
git add <file_name> // 指定添加某个文件
git add . // 添加所有文件
4.commit提交到本地仓库
git commit <file_name> -m '提交说明' // 提交一个或多个文件,多个文件之间使用空格连接
git commit -m '提交说明' // 一次提交所有文件
5.push到远程仓库
git push // 当本地分支与远程分支进行关联后, 可以直接git push推送到远程仓库
git push origin <local_branch>:<remote_branch> // 当本地分支与远程分支未进行关联时,需要指定本地分支提交到远程的哪个分支上
6.pull最新代码到本地
git pull
git pull origin
git pull origin <remote_branch>:<local_branch> // 将远程主机 origin 的 remote_branch分支拉取过来,与本地的 local_branch分支合并。
git pull origin <remote_branch> //
7.查看文件状态
git status // 列出所有未提交且有变动的文件
- new file //表示新建文件
- modified //表示修改文件
- deleted //表示删除文件
8.查看分支
git branch // 列出本地所有分支,当前分支用绿色表示且名字前面带"*"号
git branch -r // 列出远程所有分支
git branch -a // 列出本地所有分支和远程所有分支
9.创建分支
git branch <branch_name> // 复制代码,在本地创建新分支
此时创建的分支只是在本地仓库,远程仓库上并没有
需要提交本地分支到远程仓库上 git push origin <local_branch>:<remote_branch>
执行完后再远程仓库中可以看到<remote_branch>分支
10:关联分支
git push --set-upstream origin <remote_branch>
11.切换分支
git checkout <branch_name>
12.合并分支
比如现在有两个分支 master 和 dev
想将dev分支合并到master分支上
a.首先要切换到master分支上
git checkout master
b.如果是有多人开发的话,需要把远程最新的代码pull下来
git pull origin master
c.最后将dev分支代码合并到master分支上
git merge dev -m '合并说明' 此时在本地代码已经合并完成,最后别忘记提交到远程仓库
13.删除分支
git branch -d <local_branch> // 删除本地分支
git push origin --delete <remote_branch> // 删除远程分支
git push origin :<remote_branch> // 推送空分支到远程(删除远程分支另一种实现)
14.查看信息
git remote -v // 查看远程仓库信息
15.查看提交日志
git log // 查看提交日志
16.打标签
如果你达到一个重要的阶段,并希望永远记住那个特别的提交快照,你可以使用 git tag 给它打上标签,
标签要打在commit的实例id上,使用git log 查看commit实例id
git tag -a <tag_name> <commit_instance> -m "标签说明" // -a选项意为"创建一个带注解的标签"。 不用 -a 选项也可以执行的,但它不会记录这标签是啥时候打的,谁打的,也不会让你添加个标签的注解
17.删除标签
git tag -d <tag_name> // 删除本地tag
git push origin :v0.1 // 删除远程仓库中的tag, 删除和推送的指令一样,只是将一个空的tag推送到远程仓库
18.查看标签
git tag // 查看本地标签
git ls-remote --tags // 查看远程标签(
不准确
)
19.push标签
git push origin <tag_name> // 提交本地标签到远程仓库
20.checkout标签
git checkout <tag_name>
21.标签转换成分支
tag相当于一个快照,它的代码是不能被修改的,如果想对tag进行修改,我们可以为tag创建一个分支
git checkout -b <local_branch> <tag_name> // -b 表示新建分支
git bash控制台中文乱码解决方法
梦 想 不 大 , 道 路 很 长 , 开 始 了 就 别 停 下