Questions tagged «git»

Git是一个开源的分布式版本控制系统(DVCS)。使用此标签可解决有关Git使用和工作流程的问题。不要仅仅因为存储库恰好托管在GitHub上而使用[github]标签来解决与Git相关的问题。另外,请勿对碰巧涉及Git储存库的一般编程问题使用此标记。

8
如何“ git pull”到不是当前分支的分支?
在分支git pull上运行时master,通常从中拉出origin/master。我在另一个名为的分支中newbranch,但是我需要运行一个git pull从from origin/master到in的命令,master但是git checkout在拉取完成之前,我无法运行来更改选定的分支。有没有办法做到这一点? 为了提供一些背景信息,存储库存储了一个网站。我进行了一些更改,newbranch并通过将网站切换到进行了部署newbranch。现在,这些更改已在上游合并到master分支中,我正尝试将网站也切换回master分支。在这一点上,newbranch和origin/master是相同的,但master相对滞后origin/master和更新的需求。问题是,如果我以传统方式这样做: $ git checkout master # Uh oh, production website has now reverted back to old version in master $ git pull # Website is now up to date again 我需要实现与上述(git checkout master && git pull)相同的功能,但在此过程中无需将工作目录更改为早期版本。
126 git  branch  git-branch 


2
获取自上一个标记以来的所有git commit
当我要标记一个提交时,我需要知道自上次标记的提交以来发生了什么变化。例如: a87a6sdf87a6d4 Some new feature a87a6sdf87a6d3 Some bug fix a87a6sdf87a6d2 Some comments added a87a6sdf87a6d1 Some merge <- v1.4.0 在此示例中,我想了解3个最新的提交,或者能够打印如上的日志,该日志显示两个提交(如果有)的标签。当我看到添加了新功能时,我将其标记为v1.5.0。 您如何处理?这是我应该如何使用标签的方式吗?我应该在标签消息中写些什么?我总是将其留空:git tag -a v1.2.3 -m ''

6
Git:更新远程分支机构信息
在git存储库中,我未跟踪的远程分支已删除。当我打字 git branch -r 删除的分支仍然显示(我可以签出) 我必须运行什么git命令来更新此信息?
125 git 


2
你问我拉不告诉你要合并哪个分支
TL; DR:我有一个无法跟踪的“跟踪”分支。 所以我在“ bucket-4”中: $ git branch -v bucket-1 410f7b5 * gh-53 * gh-48 * "Share App" bucket-2 7ed70a2 * upgrade to SOLR 3.3.0 bucket-3 400ffe4 * emergency fix prod issue * bucket-4 64c2414 Merge branch 'bucket-3' into bucket-4 master 8dc4854 [ahead 1] * gh-73 我想从我的遥控器中提取更改: $ git pull You …
125 git  git-pull 


5
使用具有非标准端口的远程存储库
我正在为远程存储库设置本地git项目。远程存储库正在非标准端口上提供(4019)。 但这是行不通的。相反,我收到以下错误消息: ssh: connect to host git.host.de:4019 port 22: Connection refused fatal: The remote end hung up unexpectedly error: failed to push to 'ssh://root@git.host.de:4019/var/cache/git/project.git' 我的本地git配置如下: [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = ssh://root@git.host.de:4019/var/cache/git/project.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = …
125 git 

13
使用capistrano从不同的git分支进行部署
我正在使用capistrano部署RoR应用程序。代码库位于git存储库中,分支在开发中被广泛使用。Capistrano使用deploy.rb文件进行设置,其中之一就是要从中进行部署的分支。 我的问题是这样的:比方说,我创建了一个新的分支一个从主。部署文件将引用master分支。我对此进行了编辑,因此可以将A部署到测试环境。我完成了该功能,然后将分支A合并到master中。由于deploy.rb从文件一个是新鲜的,它被合并了,现在deploy.rb在主分支引用一个。是时候再次编辑了。 这似乎是很多不必要的手动编辑-参数应始终与当前分支名称匹配。最重要的是,很容易忘记每次都编辑设置。 自动化此过程的最佳方法是什么? 编辑:原来有人已经完全按照我的需要做了: 今天早上,我有机会将git仓库的一个分支部署到一个登台服务器,但是却没有一个最模糊的主意。快速浏览capistrano源代码显示,我可以:branch "branch_name"在部署脚本中使用set 。我尝试了一下,它奏效了。然后,我认为我需要在所有分支机构中进行类似的更改。当然,我是一个懒汉,想知道是否有更好的方法。 如果您不熟悉git,则git branch命令的输出是分支列表,其中带有星号标记当前在本地计算机上签出的分支。例如: > git branch * drupal_authentication fragment_caching master 因此,我想到了,如果我只是解析输出并搜索标记为current的分支,该怎么办: set :branch, $1 if `git branch` =~ /\* (\S+)\s/m 现在,我可以通过一个共享的部署脚本在本地计算机上部署当前的任何分支。
125 git  capistrano 

1
如何在Github上更改项目的许可证?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 6年前关闭。 改善这个问题 我在中创建了一个简单列表API,C并希望通过发布Github。 创建存储库后,是否可以更改许可证?
125 git  api  github  licensing 

3
git的半秘密空树对象是否可靠,为什么没有它的符号名?
Git有一个众所周知的或至少是众所周知的空树,其SHA1为: 4b825dc642cb6eb9a060e54bf8d69288fbee4904 (您可以使用git cat-file -t和在任何存储库(甚至是新创建的存储库中看到此代码git cat-file -p))。 如果您努力工作并且非常小心,则可以使用这种空树来存储没有文件的目录(请参阅“ 如何向git存储库中添加空目录的答案”),尽管这并不是一个好主意。 作为git diff-tree示例挂钩中的的一个参数,它更有用。 我想知道的是 这有多可靠?也就是说,将来的git版本中没有编号的git对象4b825dc642cb6eb9a060e54bf8d69288fbee4904吗? 为什么空树没有符号名(或者有没有?)。 (创建符号名称的一种快速而肮脏的方法是将SHA1放入。例如,.git/Nulltree不幸的是,您必须为每个存储库执行此操作。似乎最好将幻数放在脚本中,等等。我只是有一个一般厌恶魔术数字。)
125 git 


2
使用GitHub如何在添加现有回购协议时推送所有分支?
我创建了一个新的GitHub存储库-我想将现有的存储库放在那里。 我按照指示进行: cd existing_git_repo git remote add origin git@github.com:acme-org/myprj.git git push origin master 这只会将master分支推送到GitHub。 如何将现有存储库中的所有内容(包括所有分支)推送到新的GitHub存储库中?
125 git  github 

3
Git:列出所有未合并的git更改
为各种主题创建一个分支,并且在我不再需要它们时不定期删除它们,现在我最终得到了大约50个分支;) 我尝试删除分支,其中一些具有未合并的更改。 我想要的是能够准确查看仓库中没有主仓库的分支中存在哪些更改的功能。有没有办法做到这一点 提前致谢。
125 git  branch 

3
如何发布带有分发文件的npm软件包?
我想发布一个包含我的源代码和分发文件的npm软件包。我的Github存储库包含src包含JavaScript源文件的文件夹。生成过程将生成dist包含分发文件的文件夹。当然,该dist文件夹不会签入Github存储库。 我该如何发布npm软件包,以使某人这样做npm install时他们src和dist文件夹一样好?当前,当我npm publish从git存储库运行时,它只会导致src发布文件夹。 我的package.json看起来像这样: { "name": "join-js", "version": "0.0.1", "homepage": "https://github.com/archfirst/joinjs", "repository": { "type": "git", "url": "https://github.com/archfirst/joinjs.git" }, "main": "dist/index.js", "scripts": { "test": "gulp", "build": "gulp build", "prepublish": "npm run build" }, "dependencies": { ... }, "devDependencies": { ... } }
125 node.js  git  github  npm 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.