Git分布式版本控制系统学习及使用
来源:互联网 发布:配电网工程设计软件 编辑:程序博客网 时间:2024/05/17 08:16
前言:Git竟然是Linus花了仅仅两周时间用C开发出来的,膜拜啊!
1. Git常用命令:
1). 设置用户名: git config --global user.name "用户名"
2). 设置用户邮箱: git config --global user.email "用户邮箱"
3). 查看配置: git config --list
4). 初始化一个新的Git仓库 a.创建文件夹; b.在文件中初始化git(创建git仓库) git init
5). 向仓库添加、修改文件: git status : 查看当前文件状况 git diff: 当文件修改后,查看修改内容 git add 文件名: 将文件从工作区域提交到暂存区域 git commit -m "描述" 将文件从暂存区域提交到当前分支
6). 撤销修改 git checkout -- fileName : 把文件在工作区的修改全部撤销, 这里有两种情况:a.文件修改后还没放入暂存区,现在撤销修改就回到和版本库一模一样的状态; b.文件已经添加到暂存区后,又做了修改,撤销修改就会回到添加到暂存区后的状态 git reset HEAD fileName: 把暂存区的修改撤销掉,重新放回工作区
7). 删除文件: a.确实要删除文件: git rm 文件名 git commit -m "描述" b.文件删错了: git checkout -- fileName : 从版本库中把误删的文件恢复到最新版本
8). 查看提交log git log [--pretty=oneline]: 查看提交历史,以便确定要回退到哪个版本 git reflog : 查看命令历史,以便确定要回到未来的哪个版本
9). 回退到某一版本 git reset --hard commit_id
10). 从远程仓库拉代码: git clone 仓库地址
11). 提交到git远程仓库 git push
12). 远程项目每次push都需要输入用户名和密码可以如下解决: vim .git/config 将[remote "origin"] url="htts://github.com/用户名/仓库名.git 修改为 url="https://用户名:密码@github.com/用户名/仓库名.git"
13). 分支管理 git checkout -b 分支名: 创建并切换到该分支; 相当于: git branch 分支名: 创建分支 git checkout 分支名: 切换分支 git branch :列出所有分支,当前分支前面会标一个*号 git merge 分支名: 合并指定分支到当前分支 git branch -d 分支名:删除指定分支 git merge --no-ff -m "描述" 分支名 : --no-ff表示禁用Fast forward,合并后的历史有分支, 能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并 用带参数的git log也可以看到分支的合并情况: git log --graph --pretty=oneline --abbrev-commit git log --graph : 该命令可以看到分支合并图
14). Bug分支: git stash: 当前工作现场“储藏”起来,等以后恢复现场后继续工作 git stash list: 查看 恢复: a. git stash appply :恢复后,stash内容不删除 git stash drop:删除 b. git stash pop: 恢复的同时把stash内容也删除;
15). Feature分支: 分支在未merge之前强行删除: git branch -D 分支名;
16). 多人协作: 当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了, 并且远程仓库的默认名称是origin;本地新建的分支如果不推送到远程,对其他人就是不可见的 <推送分支> git remote [-v] :查看远程库信息 git push origin <branchName>: 推送分支到远程库对应的分支上 哪些分支需要推送,哪些不需要呢? master分支是主分支,因此要时刻与远程同步; dev分支是开发分支,团队所有成员都需要在上面工作,所以也需要与远程同步; <抓取分支> 从远程库clone时,默认情况下只能看到本地的master分支,要在dev分支上开发,就必须创建远程origin的dev分支到本地: git checkout -b branchName origin/branchName <合并冲突> git pull把最新的提交从origin/dev抓下来,在本地合并,解决冲突,再推送: git branch --set-upstream branchName origin/branchName :建立本地分支和远程分支的关联
17). 标签管理: 创建的标签都只存储在本地,不会自动推送到远程。所以,打错的标签可以在本地安全删除 git tag <nam> [commit_id]: 默认标签是打在最新提交的commit上, git tag : 查看所有标签 git show <tagname>: 查看标签信息 git tag -a <tagname> -m "des" commit_id: 创建带有说明的标签,用-a指定标签名,-m指定说明文字 git tag -d <tagname>: 删除标签 git push origin <tagname>: 推送某个标签到远程 git push origin --tags: 一次性推送全部尚未推送到远程的本地标签 如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除: 先从本地删除 : git tag -d <tagName>: 然后,从远程删除: git push origin :refs/tags/<tagName>
2. github建立个人网站:
1. 访问地址: https://用户名.github.io2. 搭建步骤: 1).创建个人站点: 新建仓库:创库名必须是: 用户名.github.io 2). 在仓库下新建index.html文件即可;
3. 学习Git时用到的Linux命令:
rm :移除文件rm -rf 目录名字: -r 就是向下递归,不管有多少级目录,一并删除 -f 就是直接强行删除,不作任何提示的意思mkdir:创建文件夹;rmdir:删除文件夹 pwd: 显示当前目录ls -ah : 显示当前文件夹中所有文件,包括隐藏文件touch fileName: 创建文件cat fileName:查看文件内容vim fileName: 编辑文件
1 0
- Git分布式版本控制系统学习及使用
- 分布式版本控制系统--Git使用
- 使用Git分布式版本控制系统
- 使用Git分布式版本控制系统
- 学习Git分布式版本控制系统总结
- Git分布式版本控制系统之学习笔记
- 分布式版本控制系统-Git学习(一)
- git-分布式版本控制系统学习笔记
- 分布式版本控制系统 Git
- git分布式版本控制系统
- Git分布式版本控制系统
- GIT分布式版本控制系统
- 分布式版本控制系统Git
- git分布式版本控制系统
- 分布式版本控制系统Git
- Git分布式版本控制系统
- Git分布式版本控制系统
- Git 分布式版本控制系统
- pycharm2016注册破解,亲测有效
- 关于Java并发的常用类回顾
- java获取mac地址工具类
- mysql索引总结----mysql 索引类型以及创建
- 人人都可以做深度学习应用:入门篇(上)
- Git分布式版本控制系统学习及使用
- jenkins设置token
- MIPI package format
- Flume-ng源码解析之Channel组件
- Android 应用程序退出后,怎么才能不在最近运行列表中显示?
- I/O多路转接之poll
- synchronized关键字的理解
- Python中使用Beautiful Soup库的超详细教程
- JAVA多线程之volatile 与 synchronized 的比较