我需要将git ls-remote的结果下拉到一个数组中,然后将该数组转换为这样的哈希:{commit_hash => reference}.有时,两个提交哈希值是相同的(但可能有不同的引用).所以我得到了这样的东西:
["19d97e408ee3f993745b053e281ac9dc69519e06","refs/heads/auto", "8f6f47c6e8023540b022586e368c68e1e814ce6d","refs/heads/callout_hooks", "3cbdb4b2fcb85bc7f0ed08b62e2bf2445a7659e8","refs/heads/elab", "d38a9a26ef887c08b306bdab210b39882f58e587","refs/heads/elab_6.1", "19d97e408ee3f993745b053e281ac9dc69519e06","refs/heads/master", "906dfe6eebff832baf0f92683d751432fcc98ab7","refs/heads/regression"]
我要转换为:
{"19d97e408ee3f993745b053e281ac9dc69519e06" => "refs/heads/auto"...}
但是master和auto具有相同的哈希值,因此其中一个在转换中被删除.
我如何1.)获取转换中丢弃的值的列表,或2.)通过向键添加特殊字符使密钥唯一,如*?