本地
pwd 显示当前目录
git init 在当前目录创建本地仓库
git init
创建远程仓库
git init --bare
git status
显示当前目录位置文件的修改状态
ls -al 显示目录详细
echo Hello > README.md 把hello写进readme 文件
提交文件进行管理
git add README.md ---只有提交后才能管理文件
git status 查看目录详情
红色没有添加,绿色已经添加 (区分大小写)
git commit 把缓冲区内容,提交到仓库内部的数据库,修改的历史等
进入vim之后
!!!!!!!注意
按esc ,输入框输入冒号:表示可以输入字符,qw wq exit 退出
update 文件名 更新文件
快速提交
git commit -am "This is second commit test" 提交全部改动(包括删除、修改、添加),m代表message(提交信息)
git log 提交日志 (每次提交都有信息摘要,可以通过git log 摘要查找所需内容)
git log --help 打开日志帮助
git gc 压缩提交的文件(服务器用的多)
git rm 文件名 删除文件
rm 文件名 删除文件 ===只是删除本地:需要提交才能删除服务器内容
如果是git 第一次安装执行,Git需要配置当前用户的名称和邮箱
tell me who you are--->
git config --global user.name "xxxxx"
git config --global user.email "xxx@xx.xxx"
gitk
git gui打开GUI视图
远程仓库
如何创建远程仓库
远程仓库
github.com 公开仓库免费,私有仓库收费
bitbucket.org 无限私有仓库 ,国外的JIRA AT....
1.开源中国 git.oschina.net 1000个仓库
网站管理;指定仓库名称,获取git网址;
https网址:需要每次提交、查看日志都需要输入用户名和密码
SSH key 可以让你在你的电脑和 Git @ OSC 之间建立安全的加密连接。
远程仓库连接
git remote add <别名><网址>
git remote add origin git@git.oschina.net:RoboyCore/TestDemo.git //第一次连接
git remote add github git@github.com:/RoboyCore/GitDemo.git
如果使https连接切换成 ssh git remote remove origin 再执行上一步
提交代码到服务器
在.git 里头 输入 git push -u origin master
git push -u github master -u表示让服务器自己创建文件目录
git remote -v 远程仓库列表显示
git remote remove [远程分支别名]删除远程服务连接
git clone <网址> [目标目录] 克隆下载
git clone [--bare] git@github,com:/vhly/GitDemo.git ==只能下载看别人代码 --bare是以服务器形式克隆,可不选
Git工程创建的注意事项
1.创建工程,git init
2.设置忽略:.gitignore 文件,可以设置忽略的内容
代码提交流程
1.先本地提交 git commit
2.测试完成后
3.从服务器同步代码
4.合并代码、再次测试代码
5.push 代码;提交到服务器;
6.对于第三方或者开源工程,需要第五步申请PullRequest
git 忽略提交的文件(撤回已经提交的文件以.idea文件为例)
git rm -r --cached .idea/ //删除远程文件缓存(去掉--cached会同时删除本地和远程)
git add .
git commit -m "untrack .idea/"
git 撤销上次操作
当文件提交到本地版本库后,需要撤回
撤销操作
git status 先看一下add 中的文件
git reset HEAD 如果后面什么都不跟的话 就是上一次add 里面的全部撤销了
git reset HEAD XXX/XXX/XXX.java 就是对某个文件进行撤销了
- git常用错误
Git – fatal: Unable to create 'XXX/.git/index.lock’: File exists.的解决办法
Some untracked working tree files would be overwritten by Pull
git pull时遇到error: cannot lock ref ‘xxx’: ref xxx is at (一个commitID) but expected的解决办法
远程添加文件后/或者别人push文件后
git pull [origin][仓库] [master][分支] --allow-unrelated-histories
网友评论