生成ssh公钥
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"
# 三次回车即可生成 ssh key
查看你的public key
cat ~/.ssh/id_rsa.pub
测试下是否联通
ssh -T git@git.oschina.net
返回
Welcome to Git@OSC, xxxxxxx! --标示成功
初始化
git init
输入
git add .
提交
git commit -m "Gitcommit"
提交项目到git仓库
git remote add origin http://git.oschina.net/xxx.git
执行
git push origin master
移除.git下的config文件
[remote "origin"]
url = http://git.oschina.net/xxx/none.git
fetch = +refs/heads/*:refs/remotes/origin/*
或者 git remote rm origin
克隆远程版本库
git clone http://git.oschina.net/xxx/xxx.git
git init
git remote add origin <你的项目地址> //注:项目地址形式为:http://git.oschina.net/xxx/xxx.git或者 git@git.oschina.net:xxx/xxx.git
本地初始化一个
git config --global user.name "你的名字或昵称"
git config --global user.email "你的邮箱"
第一次提交
git pull origin master
<这里需要修改/添加文件,否则与原文件相比就没有变动>
git add .
git commit -m "第一次提交"
git push origin master
按照本文档新建的项目时,在码云平台仓库上已经存在 readme 文件,故在提交时可能会存在冲突,这时您需要选择的是保留线上的文件或者舍弃线上的文件,如果您舍弃线上的文件,则在推送时选择强制推送,强制推送需要执行下面的命令:
git push origin master -f
如果您选择保留线上的 readme 文件,则需要先执行:
git pull origin master
在进行Git pull 时,添加一个可选项
git pull origin master --allow-unrelated-histories
查看版本控制文件
git ls-files
查看历史记录
git log
遇到初级问题:
git init 产生的目录解释
error: src refspec master does not match any
引起该错误的原因是,目录中没有文件,空目录是不能提交上去的
error: insufficient permission for adding an object to repository database ./objects
服务端没有可写目录的权限
错误提示:fatal: remote origin already exists.
解决办法:$ git remote rm origin
错误提示:error: failed to push som refs to ........
解决办法:$ git pull origin master //先pull 下来 再push 上去
Git init //在当前项目工程下履行这个号令相当于把当前项目git化,变身!
git add .//把当前目次下代码参加git的跟踪中,意思就是交给git经管,提交到本地库
git add <file> //把当前文件参加的git的跟踪中,交给git经管,提交到本地库
git commit -m “…”//相当于写点提交信息
git remote add origin git@github.com:ellocc/gittest.git //这个相当于指定本地库与github上的哪个项目相连
git push -u origin master //将本地库提交到github上。
git clone git@github.com:ellocc/gittest.git //将github上的项目down下来。
git fetch origin //取得长途更新,这里可以看做是筹办要取了
git merge origin/master //把更新的内容归并到本地分支/master
下面是删除文件后的提交
git status //可以看到我们删除的哪些文件
git add . //删除之后的文件提交git经管。
git rm a.c //删除文件
git rm -r gittest //删除目次
git reset --hard HEAD 回滚到add之前的状态
git diff比较的是跟踪列表中的文件和文件系统中文件的差别