新电脑git push一直出问题,到现在也没有解决,但是一些git的命令还是有用的,就先记下来吧。(下图就是没解决的报错)
一、上传本地项目到git
1、初始化git
git init
2、配置用户名和邮箱
git config -–global user.name "xxx" git config –-global user.email "xxx@xxx.com"
3、把文件添加到暂存区
git add .
4、把文件提交到仓库,并添加说明
git commit -m 'first'
5、关联远程库
git remote add origin 远程库地址(就是clone的那个地址)
注:之前都是直接clone下来的项目,没有这步。但是本地项目上传是需要的。
6、拉取远程库内容(如果远程库是空的,就不需要这步了)
git pull --rebase origin master
7、推送本地文件
git push -u origin master
注:我就是卡到这里的(;′⌒`) error: cannot spawn sh: No such file or directory 怎么整也不好,桑心。
二、其他常用命令
1、从git上克隆项目
git clone 远程库地址
2、创建并转到该分支
git checkout -b 分支名
3、新建文件夹
mkdir 文件夹名
4、状态查询
git status
三、平时使用
在平时开发中,如果是多人协作,通常会在master下面再建立一个分支开发,所以:
1、创建并切换到分支
git checkout -b 分支名
2、先拉取代码,以防冲突报错
git pull
3、把文件添加到暂存区
git add .
4、把文件提交到仓库,并添加说明
git commit -m 'first'
5、推送代码
git push
如果代码没有问题,可以由负责人合并到master:
6、合并代码到master(假设分支名为dev)
git checkout master
git merge dev
四、关于公钥
1、生成公钥
ssh-keygen -t rsa -C "xxx@xxx.com"
2、出现让你设置密码的,默认为空就行了
3、会出现一个路径(我的是C:UsersMypc.ssh),在里面生成了两个文件id_rsa和id_rsa.pub
4、记事本打开id_rsa.pub,复制里面全部内容,打开http://git.oschina.net/keys,在该页面添加公钥(把复制的内容粘贴在公钥那)
5、这样就有一个公钥了。
公钥的作用是:使用SSH公钥可以让你在你的电脑和码云通讯的时候使用安全连接(Git的Remote要使用SSH地址)
补:mac生成并复制SSH Key
- 检查电脑里是否已经存在SSH Key ;
ls -al ~/.ssh
- 存在,则用如下命令复制id_rsa.pub的内容;
pbcopy < ~/.ssh/id_rsa.pub
- 不存在,则用上面第一步的命令生成。
五、关于分支
1、查看分支
git branch -a
2、删除远程分支abc
git push origin --delete abc
或者:
git push origin :abc
3、删除本地abc分支
git branch -D abc
4、切换到xyz分支
git checkout xyz
5、拉取远程分支aaa与当前分支合并
git pull origin aaa
或者(方法二更安全,可以先看看有啥,再决定要不要merge)
git fetch origin //从远程获取最新版本到本地,不会自动合并
git merge origin/aaa
6、上传本地分支jy
git push origin jy
六、版本回退
1、退到上一版本
git reset --hard HEAD^
退到上上一个版本就是:
git reset --hard HEAD^^
向上退10个版本(多个):
git reset --hard HEAD~10
2、退到指定版本
git reset --hard 版本号
查看commit记录,如下图
git log
查看本地会影响HEAD指针的命令操作记录
git reflog
七、git修改远程仓库地址
1、查看远程仓库
git remote
2、删除
git remote rm xxx
3、添加新的远程仓库
git remote add origin 远程库地址
---------------------------------------------------------------- ("눈Д눈) ▄︻┻┳━ ·.`.`.`.
我这电脑就是用码云有问题,git最近一直在用,啥事没有~