Faits :
A.
Par jugement du 14 novembre 2019, le Tribunal de police de la République et canton de Genève a reconnu A._ coupable de vols, de menaces, d'injures, de non-respect d'une interdiction de pénétrer dans une région déterminée, de rupture de ban, de voies de fait et de consommation de stupéfiants. Il l'a condamné à une peine privative de liberté de 12 mois, peine partiellement complémentaire à celle prononcée le 10 décembre 2018 par le Ministère public genevois, ainsi qu'à une peine pécuniaire de 10 jours-amende à 10 fr. l'unité et à une amende de 500 francs. Il a en outre ordonné l'expulsion de A._ pour une durée de cinq ans et mis les frais de la procédure à sa charge.
B.
Statuant le 24 février 2020, la Chambre pénale d'appel et de révision de la Cour de justice genevoise a rejeté l'appel formé par A._ et l'appel joint formé par le ministère public contre cet arrêt.
Les faits à l'origine de cette condamnation sont en substance les suivants.
A B._, le 26 novembre 2018, A._ a soustrait un ordinateur, ainsi que les montants de 2'000 fr. et 200 euros q ui se trouvaient dans un sac.
Le 14 décembre 2018, il a dérobé le montant d'environ 400 francs. En tentant de prendre la fuite, il a donné un coup de poing au visage de C._, qui l'avait immobilisé en le maintenant couché au sol. Puis, une fois menotté, alors qu'il arrivait à sa hauteur, il s'est jeté sur celui-ci et lui a donné un coup de tête sur la tempe, qui lui a causé une bosse et des douleurs. Il a saisi un couteau de cuisine et l'a brandi dans la direction de C._, lui faisant peur, avant de le traiter de " fils de pute ".
Les 15 et 22 décembre 2018, A._ a pénétré sur le territoire genevois en violation d'une mesure d'interdiction de pénétrer sur l'ensemble du territoire du canton valable jusqu'au 24 septembre 2019.
Du 16 mai 2018 au 22 décembre 2018, sauf entre le 28 juin et le 28 août 2018 période durant laquelle il était détenu, A._ a persisté à séjourner sur le territoire suisse au mépris d'une décision d'expulsion judiciaire d'une durée de cinq ans prononcée le 8 mars 2018 par le Tribunal de police de l'Est vaudois et confirmée le 5 juillet 2018 par la Cour d'appel pénale du Tribunal cantonal vaudois.
En outre, il a consommé de manière régulière des stupéfiants en 2018, en fumant environ un gramme de cocaïne par jour.
C.
A._ forme un recours en matière pénale au Tribunal fédéral contre l'arrêt précité. Il conclut, avec suite de frais et dépens, à sa réforme, en ce sens qu'il est condamné à une peine privative de liberté n'excédant pas huit mois. Subsidiairement, il conclut au renvoi de la cause à l'autorité cantonale pour nouvelle décision dans le sens des considérants. Il sollicite par ailleurs le bénéfice de l'assistance judiciaire.

Considérant en droit :
1.
Le recourant estime qu'il devrait bénéficier des circonstances atténuantes du repentir sincère et de l'émotion violente.
1.1. Le Tribunal fédéral n'est pas une autorité d'appel, auprès de laquelle les faits pourraient être rediscutés librement. Il est lié par les constatations de fait de la décision entreprise (<ref-law>), à moins qu'elles n'aient été établies en violation du droit ou de manière manifestement inexacte au sens des art. 97 al. 1 et 105 al. 2 LTF, à savoir, pour l'essentiel, de façon arbitraire au sens de l'art. 9 Cst. Une décision n'est pas arbitraire du seul fait qu'elle apparaît discutable ou même critiquable; il faut qu'elle soit manifestement insoutenable et cela non seulement dans sa motivation mais aussi dans son résultat (<ref-ruling> consid. 1.1 p. 155 s.; <ref-ruling> consid. 1.1 p. 503; sur la notion d'arbitraire v. <ref-ruling> consid. 2.3.1 p. 244). Le Tribunal fédéral n'entre en matière sur les moyens fondés sur la violation de droits fondamentaux, dont l'interdiction de l'arbitraire, que s'ils ont été invoqués et motivés de manière précise (<ref-law>; ATF <ref-ruling> consid. 1.1 p. 503). Les critiques de nature appellatoire sont irrecevables (<ref-ruling> consid. 1.1 p. 156). Lorsque l'appréciation des preuves et la constatation des faits sont critiquées en référence à la présomption d'innocence (art. 6 par. 2 CEDH, 32 al. 1 Cst. et 10 CPP), le principe in dubio pro reo n'a pas de portée plus large que l'interdiction de l'arbitraire (<ref-ruling> consid. 1.1 p. 156; <ref-ruling> consid. 1.1 p. 503).
1.2. L'<ref-law> prévoit que le juge doit atténuer la peine lorsque l'une ou l'autre des circonstances évoquées dans cette disposition est réunie. Parmi celles-ci figurent une émotion violente que les circonstances rendaient excusables ou un état de profond désarroi (let. c) et un repentir sincère (let. d).
1.2.1. L'émotion violente est un état psychologique particulier, d'origine émotionnelle et non pathologique, qui se manifeste lorsque l'auteur est submergé par un sentiment violent qui restreint dans une certaine mesure sa faculté d'analyser correctement la situation ou de se maîtriser (<ref-ruling> consid. 2a p. 203; arrêt 6B_600/2014 du 23 janvier 2015 consid. 3.1.1 non publié aux <ref-ruling>). Les circonstances doivent rendre l'émotion violente excusable, ce qui suppose une appréciation objective des causes de cet état afin de déterminer si un homme raisonnable, de la même condition que l'auteur et placé dans une situation identique, se trouverait facilement dans un tel état (<ref-ruling> consid. 2b/bb p. 106). Ce n'est pas l'acte commis qui doit être excusable, mais l'état dans lequel se trouvait l'auteur (<ref-ruling> consid. 2a p. 204; <ref-ruling> consid. 3a p. 101). Il faut en outre qu'il existe une certaine proportionnalité entre la provocation, d'une part, et la réaction de l'auteur, d'autre part (arrêts 6B_840/2017 du 17 mai 2018 consid. 2; 6B_607/2016 du 13 décembre 2016 consid. 3.2).
1.2.2. Le repentir sincère n'est réalisé que si l'auteur a adopté un comportement particulier, désintéressé et méritoire. L'auteur doit avoir agi de son propre mouvement dans un esprit de repentir, dont il doit avoir fait la preuve en tentant, au prix de sacrifices, de réparer le tort qu'il a causé (<ref-ruling> consid. 1 p. 99 et les références citées). Le seul fait qu'un délinquant ait passé des aveux ou manifesté des remords ne suffit pas. Il n'est en effet pas rare que, confronté à des moyens de preuve ou constatant qu'il ne pourra échapper à une sanction, un prévenu choisisse de dire la vérité ou d'exprimer des regrets. Un tel comportement n'est pas particulièrement méritoire (arrêt 6B_1054/2019 du 27 janvier 2020 consid. 1.1 et les références citées). Savoir si le geste du prévenu dénote un esprit de repentir ou repose sur des considérations tactiques est une question d'appréciation des faits (arrêts 6B_124/2020 du 1er mai 2020 consid. 2.4.1 et les références citées; 6B_1368/2016 du 15 novembre 2017 consid. 5.1 non publié aux <ref-ruling>; 6B_339/2014 du 27 novembre 2014 consid. 2.1 non publié aux <ref-ruling>). Les constatations des autorités cantonales sur ce point lient en principe le Tribunal fédéral (<ref-law>).
1.3. S'agissant du vol du 26 novembre 2018, la cour cantonale a retenu que le recourant avait soustrait un ordinateur, ainsi que les montants de 2'000 fr. et 200 euros qui se trouvaient dans un sac. Dans le cadre de sa motivation relative à la fixation de la peine, la cour cantonale a observé que la restitution alléguée du sac volé le 26 novembre 2018 (contenant encore des médicaments mais déjà allégé de ses valeurs) ne pouvait constituer, à supposer qu'elle fût avérée, un acte de repentir sincère.
Le recourant prétend que la cour cantonale n'aurait donné aucune indication quant aux circonstances dans lesquelles s'est déroulé ce vol. Il ressortirait des pièces versées à la procédure que, constatant la présence de médicaments dans le sac volé et s'inquiétant pour la santé de son propriétaire, le recourant aurait pris la décision de retourner le sac à l'intérieur du restaurant où il l'avait préalablement dérobé. Pour lui, les conditions du repentir sincère seraient réalisées. Il aurait contribué à réparer le dommage en rapportant le sac.
Contrairement à ce que soutient le recourant, la cour cantonale n'a pas omis de considérer les circonstances entourant le vol.
On comprend de l'arrêt attaqué que, selon la cour cantonale, rapporter un sac contenant encore des médicaments mais déjà allégé de ses valeurs ne suffisait manifestement pas à constituer un acte de repentir sincère. Cette motivation suffit sous l'angle du droit d'être entendu, grief que le recourant ne motive au demeurant pas (<ref-law>). En outre, il ne ressort pas des faits, qui lient le Tribunal fédéral (<ref-law>) et dont le recourant ne démontre pas l'arbitraire, que ce sac avait une valeur marchande particulière, ni que les médicaments qu'il contenait étaient indispensables à son propriétaire. Il ressort en revanche de l'arrêt cantonal, sans que le recourant ne formule un grief d'arbitraire à cet égard, que le butin dérobé s'élevait à plus de 2'000 francs. Dès lors, il n'apparaît pas que la restitution du sac ait contribué à réparer, même partiellement, le dommage causé par le vol des espèces. Un tel comportement n'était pas non plus particulièrement méritoire, au sens de la jurisprudence précitée, au point de constituer la preuve concrète d'un repentir sincère. Aussi, la cour cantonale a refusé à juste titre de retenir la circonstance atténuante du repentir sincère.
1.4. S'agissant du second vol, la cour cantonale a retenu que le recourant avait dérobé le montant d'environ 400 francs. En tentant de prendre la fuite, il avait notamment donné un coup de poing au visage de C._, qui l'avait immobilisé en le maintenant couché au sol. Il avait saisi un couteau de cuisine et l'avait brandi dans la direction de celui-ci, lui faisant peur. L'opposition violente manifestée lors de son interpellation du 14 décembre 2018 n'avait certainement pas été causée, compte tenu des circonstances, par une émotion violente, encore moins excusable, le recourant venant de commettre un vol. Il était seul responsable des blessures subies à cette occasion.
Selon le recourant, les faits auraient été établis de manière lacunaire et en contradiction avec les pièces du dossier. Il ressortirait du constat médical et du rapport d'arrestation du 15 décembre 2018 qu'il aurait subi une interpellation démesurée de la part de C._, au cours de laquelle il aurait été blessé. Le recourant ne fait toutefois qu'opposer sa propre appréciation des moyens de preuve à celle de la cour cantonale dans une démarche purement appellatoire. La cour cantonale n'a pas ignoré que le recourant avait subi des blessures à l'occasion de son interpellation mais a souligné qu'il avait manifesté une opposition violente lors de celle-ci et qu'il était donc seul responsable des lésions. Le recourant n'explique pas en quoi la cour cantonale serait tombée dans l'arbitraire. Lorsque le recourant soutient qu'il se serait ensuite réfugié dans la cuisine et que, voyant C._ revenir vers lui, il aurait pris peur et, par réflexe et en proie à une émotion violente, aurait saisi un couteau, par crainte de recevoir à nouveau des coups, il se contente encore d'opposer sa propre version des faits à celle de la cour cantonale. Ce faisant, il formule une argumentation appellatoire, partant irrecevable. Dès lors, le recourant ne développe aucune argumentation précise tendant à démontrer, eu égard aux exigences accrues de motivation de l'<ref-law>, en quoi les considérations cantonales seraient arbitraires ou en quoi celle-ci aurait arbitrairement omis les éléments qu'il invoque. Son grief, insuffisamment motivé, est irrecevable.
Le recourant soutient également avoir agi en proie à une émotion violente non sur la base des faits retenus, dont il n'a pas démontré l'arbitraire, mais sur la base de faits qu'il invoque librement. Cette manière de procéder est irrecevable.
2.
Le recourant conteste la quotité de la peine privative de liberté infligée et se plaint d'un défaut de motivation à cet égard.
2.1. Aux termes de l'<ref-law>, le juge fixe la peine d'après la culpabilité de l'auteur. Il prend en considération les antécédents et la situation personnelle de ce dernier ainsi que l'effet de la peine sur son avenir (al. 1). La culpabilité est déterminée par la gravité de la lésion ou de la mise en danger du bien juridique concerné, par le caractère répréhensible de l'acte, par les motivations et les buts de l'auteur et par la mesure dans laquelle celui-ci aurait pu éviter la mise en danger ou la lésion, compte tenu de sa situation personnelle et des circonstances extérieures (al. 2).
La culpabilité de l'auteur doit être évaluée en fonction de tous les éléments objectifs pertinents, qui ont trait à l'acte lui-même, à savoir notamment la gravité de la lésion, le caractère répréhensible de l'acte et son mode d'exécution. Du point de vue subjectif, sont pris en compte l'intensité de la volonté délictuelle ainsi que les motivations et les buts de l'auteur. A ces composantes de la culpabilité, il faut ajouter les facteurs liés à l'auteur lui-même, à savoir les antécédents, la réputation, la situation personnelle (état de santé, âge, obligations familiales, situation professionnelle, risque de récidive, etc.), la vulnérabilité face à la peine, de même que le comportement après l'acte et au cours de la procédure pénale (<ref-ruling> consid. 9.1 p. 147; <ref-ruling> consid. 6.1.1 p. 66 s. et les références citées).
Le juge dispose d'un large pouvoir d'appréciation dans la fixation de la peine. Le Tribunal fédéral n'intervient que lorsque l'autorité cantonale a fixé une peine en dehors du cadre légal, si elle s'est fondée sur des critères étrangers à l'<ref-law>, si des éléments d'appréciation importants n'ont pas été pris en compte ou, enfin, si la peine prononcée est exagérément sévère ou clémente au point de constituer un abus du pouvoir d'appréciation. L'exercice de ce contrôle suppose que le juge exprime, dans sa décision, les éléments essentiels relatifs à l'acte ou à l'auteur qu'il prend en compte, de manière à ce que l'on puisse constater que tous les aspects pertinents ont été pris en considération et comment ils ont été appréciés, que ce soit dans un sens aggravant ou atténuant (<ref-law>). La motivation doit ainsi justifier la peine prononcée, en permettant de suivre le raisonnement adopté, même si le juge n'est pas tenu d'exprimer en chiffres ou en pourcentages l'importance qu'il accorde à chacun des éléments qu'il cite (<ref-ruling> consid. 1.2 p. 319; <ref-ruling> consid. 5.6 p. 61; <ref-ruling> consid. 2.1 p. 19 s.). Plus la peine est élevée, plus la motivation doit être complète (<ref-ruling> consid. 1.2 p. 319; <ref-ruling> consid. 2c p. 105).
2.2. Concernant la situation personnelle du recourant, la cour cantonale a notamment observé que le recourant, sans emploi ni revenu, était toxicomane depuis 2009 ou 2010. Il avait été condamné à 14 reprises en Suisse depuis 2009 (la condamnation vaudoise ne figurant pas encore au casier le 24 septembre 2018), en particulier à B._ le 10 décembre 2018 pour séjour illégal, vol et non-respect d'une assignation à résidence à une peine privative de liberté de 120 jours.
S'agissant de la fixation de la peine, la cour cantonale a retenu que la faute du recourant était lourde. Celui-ci avait agi au préjudice du patrimoine et de l'intégrité d'autrui et au mépris des décisions rendues à son encontre. Son mobile relevait de l'égoïsme et de l'appât du gain facile, que sa toxicomanie ne pouvait excuser. Aucune circonstance atténuante ne pouvait être retenue. La restitution alléguée du sac volé le 26 novembre 2018 (contenant encore des médicaments mais déjà allégé de ses valeurs) ne pouvait constituer, à supposer qu'elle fût avérée, un acte de repentir sincère. L'opposition violente manifestée lors de son interpellation du 14 décembre 2018 n'avait certainement pas été causée, compte tenu des circonstances, par une émotion violente, encore moins excusable, le recourant venant de commettre un vol. Il était seul responsable des blessures subies à cette occasion. Sa collaboration à la procédure avait été au mieux moyenne. Il avait fluctué dans ses déclarations et n'avait admis qu'en audience d'appel avoir su faire l'objet d'une expulsion judiciaire. Il n'avait exprimé aucun regret, sinon celui d'être en détention dans des conditions qu'il qualifiait de cauchemardesques. Sa prise de conscience apparaissait inexistante. Il avait de nombreux et mauvais antécédents, spécifiques, qui démontraient qu'il s'était durablement installé dans la délinquance et qu'il avait été jusqu'ici imperméable à l'effet dissuasif des peines prononcées à son encontre. Les faits du 14 décembre 2018 avaient été commis quatre jours seulement après sa dernière condamnation.
La cour cantonale a souligné qu'il y avait concours d'infractions et concours rétrospectif avec la peine privative de liberté de 120 jours prononcée le 10 décembre 2018. S'agissant des infractions commises postérieurement au 10 décembre 2018, l'infraction la plus grave était celle du vol perpétré le 14 décembre 2018, qui commandait à elle seule une peine privative de liberté de quatre mois, peine qui devait être augmentée de trois mois pour la rupture de ban compte tenu de la durée - telle que réduite par la cour cantonale - de la période pénale, de deux mois pour les menaces, puis encore de deux mois pour l'infraction à l'art. 119 LEI. Quant au vol commis le 26 novembre 2018, si celui-ci avait été jugé avec les faits du 10 décembre 2018, une peine privative de liberté de 150 jours aurait été la sanction adéquate. Il s'imposait de prononcer, pour les infractions objet de la procédure cantonale, une peine privative de liberté partiellement complémentaire de 12 mois.
2.3. Le recourant reproche à la cour cantonale d'avoir omis d'exposer les motifs pour lesquels elle n'aurait pas pris en compte sa dépendance dans la fixation de la peine. Sa toxicomanie l'aurait amené à commettre des infractions afin de satisfaire son addiction. Cette dépendance, qui durait depuis plus de dix ans, amenuisait fortement sa liberté de décision et, partant, sa faute.
La cour cantonale n'a pas ignoré le rôle de la toxicomanie dans le comportement punissable du recourant et a tenu compte de cet élément. Il ressort en effet de la description de sa situation personnelle qu'il souffre de cette addiction depuis 2009 ou 2010. Dans la fixation de la peine, la cour cantonale a toutefois estimé que la faute du recourant était lourde. Son mobile relevait de l'égoïsme et de l'appât du gain facile, que sa toxicomanie ne saurait excuser. Il importe peu que la cour cantonale n'ait pas expressément rappelé, au stade de la fixation de la peine, que le recourant souffrait de cette addiction depuis une dizaine d'années. En effet, le jugement forme un tout et on admet que le juge garde à l'esprit l'ensemble des éléments qui y figurent (arrêt 6B_594/2019 du 4 juillet 2019 consid. 1.3.2 et la référence citée). Bien que succincte, la motivation permet de comprendre les éléments qui ont guidé la prise de décision de la cour cantonale. Elle est dès lors suffisante tant sous l'angle du droit d'être entendu - que le recourant n'invoque toutefois pas - que des exigences découlant de l'<ref-law>. On comprend ainsi qu'aux yeux de la cour cantonale, la toxico-dépendance du recourant n'a pas joué un rôle déterminant dans sa faute, qu'elle a qualifiée de lourde, par rapport à son mobile relevant de l'égoïsme et l'appât du gain facile. Elle était dès lors fondée à retenir que son addiction n'excusait pas son comportement. Le recourant ne démontre pas en quoi son addiction aurait dû avoir un poids plus important dans la quotité de la peine prononcée. Ses griefs doivent par conséquent être rejetés.
2.4. Le recourant soutient que la peine prononcée serait excessive. Ses nombreux antécédents ne sauraient justifier une condamnation aussi sévère. Il invoque un arrêt de la Chambre pénale d'appel et de révision genevoise, dans lequel un prévenu aurait été condamné à 4 mois de peine privative de liberté pour s'être rendu coupable d'entrée et de séjour illégal, de vol, de violation de domicile et d'infraction à la LStup. Enfin, une peine privative de liberté d'une durée de deux mois pour s'être saisi d'un couteau quelques secondes serait excessive.
Contrairement à ce que sous-entend l'argumentation du recourant, la cour cantonale ne s'est pas uniquement fondée sur ses antécédents pour fixer la peine. Comme cela ressort de la motivation cantonale, il s'agit de l'un des éléments dont elle a tenu compte sans toutefois qu'il justifie, à lui seul, la quotité de la peine. En outre, il s'agit d'un facteur pertinent au regard de l'<ref-law> dont la cour cantonale a déduit, sans que le recourant ne le critique, qu'il démontrait l'ancrage durable du recourant dans la délinquance et que celui-ci avait jusqu'ici été imperméable à l'effet dissuasif des peines prononcées à son encontre. Le recourant n'expose pas en quoi la cour cantonale aurait accordé un poids trop important à ses antécédents et, au vu de la motivation cantonale, il n'apparaît pas que tel soit le cas. Pour le surplus, la référence à l'arrêt cantonal est vaine dès lors qu'il n'a pas fait l'objet d'un contrôle par le Tribunal fédéral. Quoi qu'il en soit, il ne permet pas de comprendre en quoi consistaient les faits jugés dans cette affaire et les circonstances personnelles de l'accusé, et encore moins de les comparer à ceux de l'espèce. Cela ne suffit manifestement pas à démontrer une violation des principes régissant la fixation de la peine. Au demeurant, comme le Tribunal fédéral a eu l'occasion de le rappeler à maintes reprises, la comparaison d'une peine d'espèce avec celle prononcée dans d'autres cas concrets est d'emblée délicate, compte tenu des nombreux paramètres qui interviennent dans la fixation de la peine (<ref-ruling> consid. 6.3.2 p. 69). En définitive, le recourant n'invoque aucun élément propre à modifier la peine, que la cour cantonale aurait omis ou pris en considération à tort.
S'agissant de l'infraction de menace, le recourant s'écarte de manière inadmissible des faits retenus par la cour cantonale qui lient le Tribunal fédéral (<ref-law>), en tant qu'il affirme n'avoir saisi le couteau que quelques secondes. Quoi qu'il en soit, il n'expose pas en quoi l'aggravation de peine de deux mois relative à la menace serait excessive se contentant de l'affirmer. A cet égard, il suffit de relever que, compte tenu de l'ensemble des circonstances, en particulier du fait que le recourant s'est muni d'un couteau, soit d'une arme potentiellement dangereuse, et que sa menace était dirigée contre l'intégrité physique de la victime, soit un bien juridique particulièrement important, une aggravation de sa peine de deux mois ne procède pas d'un abus du large pouvoir d'appréciation dont dispose la cour cantonale. Au vu de l'ensemble des circonstances, il n'apparaît pas que la peine privative de liberté de 12 mois, partiellement complémentaire à celle prononcée le 10 décembre 2018, soit exagérément sévère au point de constituer un abus du large pouvoir d'appréciation de la cour cantonale
3.
Le recours doit être rejeté dans la mesure où il est recevable. Comme il était dénué de chance de succès, la demande d'assistance judiciaire doit être rejetée (<ref-law>). Le recourant, qui succombe, supporte les frais judiciaires, dont le montant sera fixé en tenant compte de sa situation financière, laquelle n'apparaît pas favorable (art. 65 al. 2 et 66 al. 1 LTF).

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté dans la mesure où il est recevable.
2.
La demande d'assistance judiciaire est rejetée.
3.
Les frais judiciaires, arrêtés à 1'200 fr., sont mis à la charge du recourant.
4.
Le présent arrêt est communiqué aux parties et à la Cour de justice de la République et canton de Genève, Chambre pénale d'appel et de révision.
Lausanne, le 11 juin 2020
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président : Denys
La Greffière : Rettby