版本控制工具,开发必备的知识
生成密钥
登录
1 2
| git config --global user.name "Your Name" git config --global user.email "email@example.com"
|
提交到版本库
- Git添加文件需要add,commit一共两步
- 可以一次提交很多文件,所以你可以多次add不同的文件
1 2 3
| git add file1.txt git add file2.txt file3.txt git commit -m "add 3 files."
|
git add -A
:提交所有修改过的文件
git commit -a -m "写你想说的内容"
:提交所有add后的文件
推送拉取内容
git push
:推送到远程仓库
git pull
:拉取远程仓库内容
git fetch -a
:拉取所以远程分支代码
其他常用命令
git init
:把当前所在的目录变成Git可以管理的仓库
git status
:修改文件后查看文件结果/查看工作区的状态,查看文件具体被修改的内容
git log
:查看修改的文件记录(从最近到最远)(如果嫌输出信息太多,看得眼花缭乱的,可以试试加上–pretty=oneline参数)
git reflog
:当前版本返回上个版本
git checkout -- (file)
:撤销修改(文件没放到暂存区)
git reset HEAD <file>
:撤销修改(文件放到暂存区)
git rm <file>
:从版本库中删除该文件
更新被拒绝解决方法
git fetch origin
:获取远程更新
git merge origin/master
:把更新的内容合并到本地分支
分支操作
git branch
:查看分支
git branch <name>
:创建分支
git checkout <name>
:切换分支
git checkout -b <name>
:创建+切换分支
git merge <name>
:合并某分支到当前分支
git branch -d <name>
:删除分支
git log --graph
:查看分支合并图
标签操作
git tag <tagname>
:用于新建一个标签,默认为HEAD,也可以指定一个commit id
git tag -a <tagname> -m "写你想说的"
:可以指定标签信息
git tag
:可以查看所有标签
git push origin <tagname>
:可以推送一个本地标签
git push origin --tags
:可以推送全部未推送过的本地标签
git tag -d <tagname>
:可以删除一个本地标签
git push origin :refs/tags/ <tagname>
:可以删除一个远程标签
.gitignore文件
:忽略某些文件不需要上传时编写
.gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理!
解决每次提交需要输入密码
- 在C:\Users\Administrator 的目录下,找到一个.gitconfig的文件里面有自己的用户名和密码然后再用户名和密码下面添加
1 2
| [credential] helper = store
|
清除远程仓库无用文件
git rm -r –cached 文件/文件夹
git commit -m -a ‘1’
git push
Git分支操作
强制覆盖远程
git push -f origin
一个分支强制覆盖某分支
1 2 3 4 5 6
| # 假设当前位于master分支 git checkout test # 将test分支重置为master分支 git reset --hard master # 将重置后的test分支强制推送到远程仓库 git push origin test -f
|
版本回滚
已经push
后的版本回滚
1 2 3 4
| git reset --hard head头
# 强制推送 git push -f origin master
|
相关文章
正则表达式
简单的网络知识
HTTP
GitHub搜索技巧