git的使用
1.在命令行中,输入“git init”,使Test文件夹加入git管理;
2.输入“git add .”(不要漏了“.”),将Test文件夹全部内容添加到git。
3.输入“git commit -m "first commit"”(“git commit -m "提交信息"”
)
4.输入“git remote add origin https://github.com/shench5612390/Test.git”(git remote add origin 你自己的https地址),连接你的guthub仓库。
5.输入“git push -u origin master”,上传项目到Github。这里会要求输入Github的账号密码,按要求输入就可以。
如果重复提交错误
最后找到解决办法如下:
1、先删除远程 Git 仓库
$ git remote rm origin
2、再添加远程 Git 仓库
$ git remote add origin git@github.com:FBing/java-code-generator
如果执行 git remote rm origin 报错的话,我们可以手动修改gitconfig文件的内容
$ vi .git/config
把 [remote “origin”] 那一行删掉就好了。
1 git 配置
git config --global user.name “用户名”
git config --global user.email “邮箱”
2 生成公钥私钥
#ssh-keygen -t rsa -C "xxxxx@xxxxx.com"
一路Enter下去,将生成的公钥填在码云上
#cat ~/.ssh/id_rsa.pub
3建立git仓库
在你的项目文件夹下执行git命令
git init
4 将项目文件添加到仓库中
git add .
5 将add的文件commit到仓库
git commit -m '备注'
6 将本地仓库关联到码云上
git remote add origin git@gitee.com:shiqingqing/test.git
7 上传码云前要先pull 下
git pull origin master --allow-unrelated-histories
8 最后一步 上传代码到码云仓库
git push -u origin master
Updates were rejected because the tip of your current branch is behind
1.使用强制push的方法:
$ git push -u origin master -f
这样会使远程修改丢失,一般是不可取的,尤其是多人协作开发的时候。
2.push前先将远程repository修改pull下来
$ git pull origin master
$ git push -u origin master
3.若不想merge远程和本地修改,可以先创建新的分支:
$ git branch [name]
然后push
$ git push -u origin [name]
问题
1、本地初始化了git仓库,放了一些文件进去并进行了add操作和commit提交操作;
$git add -A
$git commit -m "start 2018-06-06"
2、github创建了git仓库并建立了README文件;
3、本地仓库添加了github上的git仓库作为远程仓库,起名origin;
$git remote add origin https://github.com/tielemao/TielemaoMarkdown
4、问题来了,本地仓库在想做同步远程仓库到本地为之后本地仓库推送到远程仓库做准备时报错了,错误如下:
fatal: refusing to merge unrelated histories
(拒绝合并不相关的历史)
解决
出现这个问题的最主要原因还是在于本地仓库和远程仓库实际上是独立的两个仓库。假如我之前是直接clone的方式在本地建立起远程github仓库的克隆本地仓库就不会有这问题了。
查阅了一下资料,发现可以在pull命令后紧接着使用--allow-unrelated-history选项来解决问题(该选项可以合并两个独立启动仓库的历史)。
命令:
$git pull origin master –allow-unrelated-histories
以上是将远程仓库的文件拉取到本地仓库了。
紧接着将本地仓库的提交推送到远程github仓库上,使用的命令是:
$ git push <远程主机名> <本地分支名>:<远程分支名>
也就是
$git push origin master:master
提交成功。
pull
git pull 命令基本上就是 git fetch 和 git merge 命令的组合体,Git 从指定的远程仓库中抓取内容,然后马上尝试将其合并进你所在的分支中。
从远程仓库中获得数据,可以执行:
$ git fetch [remote-name]
这个命令会访问远程仓库,从中拉取所有你还没有的数据。 执行完成后,你将会拥有那个远程仓库中所有分支的引用,可以随时合并或查看。
但是注意的是 git fetch 并不会自动合并或修改你当前的工作。 当准备好时你必须手动将其合并入你的工作。
如果你使用 clone 命令克隆了一个仓库,命令会自动将其添加为远程仓库并默认以 “origin” 为简写。 所以,git fetch origin 会抓取克隆(或上一次抓取)后新推送的所有工作。
由于fetch命令后还要再做一步merge命令的操作,所以使用 git pull 命令来自动的抓取然后合并远程分支到当前分支。 (相当于一次执行fetch加merge命令)这可能会是一个更简单或更舒服的工作流程。